guarda ambiente ao executar em script

1

Eu tenho um script bash que deve estar executando vários comandos. Os comandos funcionam bem quando inseridos em um terminal, mas quando eu tento executá-los de dentro do script eles não funcionam, então eu suponho que seja algo específico do ambiente.

No script que tenho

exec "$cmd"

e isso não funciona, enquanto que se eu copiar o conteúdo de $ cmd e colar em um terminal, ele funcionará bem.

Como faço para manter o ambiente atual ao executar o script? Ou você tem alguma outra ideia do que seja?

    
por dutt 22.08.2012 / 13:25

2 respostas

0

Coloque o comando em uma matriz.

arr=(foo bar baz quux)
exec "${arr[@]}"
    
por 22.08.2012 / 13:40
0

Digite set -o allexport no topo do seu script bash. Isso deve exportar automaticamente todas as variáveis definidas por você. (Observe que isso é considerado um estilo ruim; o melhor seria simplesmente exportar as variáveis apropriadas).

    
por 23.08.2012 / 21:32