Eu tenho um script de shell Bash que chama uma série de comandos. Eu gostaria que o script shell saísse automaticamente com um valor de retorno 1 se algum dos comandos retornar um valor diferente de zero.
Isso é possível sem verificar explicitamente o resultado de cada comando?
por exemplo
dosomething1
if [[ $? -ne 0 ]]; then
exit 1
fi
dosomething2
if [[ $? -ne 0 ]]; then
exit 1
fi
set -e
, também façaset -u
(ouset -eu
).-u
põe fim ao comportamento idiota e oculto que você pode acessar qualquer variável inexistente e ter um valor em branco produzido sem diagnóstico.