Moin Ich habe ein Problem mit einem shellscript. Irgendwie scheint die bash angefangen zu haben, für ein 'while' eine neue shell aufzumachen. Eine Variable, die ich vor der while-shleife setze und in der schleife incrementiere ist nach der Schleife wieder auf dem initialen Wert. Vielleicht wird das an einem Beispiel deutlicher: [...] FOUND=0 find $LOGDIR -type f -exec grep -l "^alert" {} \; | while reade line do do_some_really_important() if test $FOUND -eq 0; then echo $HEADER; fi do_more_important_things() FOUND=`expr $FOUND + 1` done if test $FOUND -eq 0 then echo $HEADER echo "No alert found" fi [...] Es wird immer zusätzlich "No alert found" ausgegeben, auch wenn vorher welche angezeigt wurden. Schüß -- Hans-Joachim Hoetger voice: +49-5246-80-1555 mediaWays GmbH fax: +49-5246-80-2555 PGP: BA D3 11 1A 40 EB 29 35 D9 E2 84 5F 13 55 1E D3 07 6E D9 77
Teilnehmer (2)
-
Achim Dreyer
-
Hans-Joachim Hoetger