Se um script Bash possui set -e
e um comando no script retorna um erro, como posso fazer uma limpeza antes da saída do script?
Por exemplo:
#!/bin/bash
set -e
mkdir /tmp/foo
# ... do stuff ...
rm -r /tmp/foo
Como garantir que a /tmp/foo
remoção seja removida, mesmo se um dos comandos no ... do stuff ...
falhar?
help trap
para ver alguma ajuda no built-in.Da referência para
set
:(Ênfase minha).
fonte
sh
versão da resposta de devguydavid .ref: shellscript.sh
fonte
POSIX
Me faz sorrir. :) Ótimo site de ensino ao qual você também se vinculou.