Bonjour,
J'aimerai comprendre soit le pourquoi, soit le comment faire de la gestion des variables d'environnement dans une boucle while et surtout de leur propagation
Voici deux exemples de code semblables mais qui ne donnent pas le même résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 FILE_ID=0 ls -w 1 /home | while read file do echo "$FILE_ID" FILE_ID=$(( $FILE_ID + 1 )) done echo "final : $FILE_ID"0
1
2
3
4
5
final : 0
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 FILE_ID=0 while read file do echo "$FILE_ID" FILE_ID=$(( $FILE_ID + 1 )) done <<EOF `ls -w 1 /home` EOF echo "final : $FILE_ID"Comment se fait-il que dans le 1er cas la valeur de la variable FILE_ID ne survive pas au dela de la boucle while ?!0
1
2
3
4
5
final : 6
Merci pour vos éclairages !
Partager