J'écris un script qui doit être exécuté en utilisant source, car sa tâche est de modifier l'environnement. Pendant le script, je veux l'utiliser set -epour que toute erreur arrête le script. Le script ressemble à ceci:
#!/bin/bash
set -e
# do something
cd somewhere
source anotherScript
Le problème est que, set -enaturellement, reste en vigueur après la fin du script. Comment puis-je m'assurer que l' setoption modifiée est correctement restaurée à sa valeur précédente lorsque le script s'arrête (de quelque manière que ce soit - en réussissant ou en cas d'erreur)?
-x/ xtrace) est résolu à Supprimer la trace d'exécution pour la commande echo?