Hallo Liste,

ich verzweifle gleich, da ich das Verhalten der Bash gerade nicht verstehe.
Ich habe eine while-Schleife, in der ich eine Variable hochzähle.
Anschliessen will ich ausserhalb dieser while-Schleife auf die Variable zugreifen. Aber anscheinend wird diese Variable nur innerhalb der while-Schleife korrekt
ausgegeben.

------snip------
      DROP_COUNT=0;
      while read n x; do
              if [ $n -gt 5 ]; then
                      DROP_COUNT=`expr $DROP_COUNT + 1`;
              fi
           echo $DROP_COUNT;
      done
      echo $DROP_COUNT;
------snip------

Wenn ich das dann ausführe, erhalte ich so etwas hier:

------snip------
0
1
2
2
3
3
3
3
3
0
------snip------

Kann mir das jemand erklären, wo ich da den Denkfehler habe?
Warum sich die Bash so verhält?

Gruß, Peter
--
----------------------------------------------------------------------------
PUG - Penguin User Group Wiesbaden - http://www.pug.org

Antwort per Email an