J'ai une boucle for dans un script shell à la:
#!/bin/bash
set -u
set -e
for l in sh rb py php java cs; do
(cd $l; ./run-tests.sh)
done
L'intention est d'avoir la boucle for-die dans un feu lorsque l'une des sous-commandes génère une erreur similaire.
Maintenant, j'ai un moyen de contourner le problème: (cd $l; ./run-tests.sh) || die "Message here" avec une définition appropriée de die. Cependant, je suis vraiment curieux de savoir pourquoi la boucle for ne se termine pas automatiquement selon l'attente définie par la commande "set -e"? Idéalement, j'aimerais ne pas avoir de cas particulier pour chaque boucle comme celle-là. :)