Testé avec : ksh (OpenBSD) et dash/bash (GNU/Linux)
Ce script:
--CUT HERE--
- !/bin/sh
q=42
echo "q = $q"
while read a
do
let "q++"
echo "q = $q"
done < /etc/fstab
echo "q = $q"
--CUT HERE--
renvoie:
q = 42
q = 43
q = 44
q = 45
q = 46
q = 47
q = 48
q = 49
q = 50
q = 51
q = 52
q = 53
q = 54
q = 55
q = 56
q = 56
--CUT HERE--
- !/bin/sh
q=42
echo "q = $q"
cat /etc/fstab | while read a
do
let "q++"
echo "q = $q"
done
echo "q = $q"
--CUT HERE--
renvoie:
q = 42
q = 43
q = 44
q = 45
q = 46
q = 47
q = 48
q = 49
q = 50
q = 51
q = 52
q = 53
q = 54
q = 55
q = 56
q = 42
Si quelqu'un a une explication logique et rationnelle, j'ai plus de cheveux pour ma part...