Augeas no shell script

1

Estou tentando usar o augtool no script de shell ex:

#!/bin/bash

augtool <<-EOF
print /augeas/load
EOF

No entanto, se eu executar este script, o script será executado indefinidamente sem saída e o uso da CPU é 100% via top cmd.

o comando pode ser executado com sucesso usando

$augtool
$print /augeas/load
/augeas/load/Webmin/excl[4] = "/*.dpkg-bak"
/augeas/load/Webmin/excl[5] = "/*.dpkg-new"
/augeas/load/Webmin/excl[6] = "/*.dpkg-old"
/augeas/load/Webmin/excl[7] = "/*.rpmsave"
/augeas/load/Webmin/excl[8] = "/*.rpmnew"
/augeas/load/Webmin/excl[9] = "/*~"
... lots of output...
augtool> quit

Estou usando o Ubuntu 12.04.2 e a versão do augtool é 0.10.0.

A minha pergunta é: como usar o augtool no shell script?

[editado]

Eu executo o comando strace e obtenho o seguinte erro:

lstat64("/augeas/load/", 0xbfc637d8) = -1 ENOENT (No such file or directory)

e depois continua em loop e mostrando:

write(2, "", 1)                 = 1
rt_sigprocmask(SIG_BLOCK, [INT], [], 8) = 0
rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0
read(0, "", 1)                    = 0

No entanto, se eu executar este script com root, ele será executado com êxito

    
por user41299 17.06.2013 / 12:37

2 respostas

2

Como @Flup, não consigo reproduzir seu problema.

Observe também que você também pode usar augtool como um interpretador:

#!/usr/bin/augtool -f
print /augeas/load

Combinando isso com o sinalizador -s ( --autosave ) se você quiser fazer uma modificação sem chamar explicitamente save no final do seu script.

    
por 06.01.2014 / 21:35
0

O que acontece se você sair explicitamente de dentro dos comandos para o augtool?

#!/bin/bash

augtool <<-EOF
print /augeas/load
quit
EOF
    
por 17.06.2013 / 14:31
crash shell: qualquer forma de verificar se um comando foi executado com sucesso Eu gosto bastante de mercurial. Existe um shell Linux que suporta isso? ______ qstntxt ___

Eu gosto bastante do padrão de estilo mercurial .hgignore .

%bl0ck_qu0te%

Existe um shell Linux que suporte isso?

    
______ azszpr80053 ___

Todos os shells suportarão o padrão glob %code% . KSH, Bash e ZSH suportam expansão de brace ( %code% ), mas note que isso não é um arquivo glob, então ele sempre será expandido. A globbing estendida do ZSH e o %code% (bash v4 ou superior) do Bash suportam %code% para globalização recursiva.

    
___