Estou escrevendo um script que precisa ser executado usando source
, porque sua tarefa é modificar o ambiente. Durante o script, quero usar set -e
para que qualquer erro pare o script. O script fica assim:
#!/bin/bash
set -e
# do something
cd somewhere
source anotherScript
O problema é que, set -e
naturalmente, permanece em vigor após a conclusão do script. Como posso garantir que a set
opção alterada seja restaurada adequadamente ao seu valor anterior quando o script for interrompido (de alguma forma - seja com êxito ou com erro)?
-x
/ xtrace
) é abordado em Suprimir rastreamento de execução para o comando echo?