On Tue, 15 Mar 2005, Christian Knoke wrote:

> > [ ... Testscript snipped ... ]
> Nicht unbedingt. In der zweiten Version d�rfte der Output von ps xufa als
> Parameter des Befehls echo in der Prozesstabelle auftauchen, in der ersten
> nicht.


Kein Problem - kann man testen, indem man den Zweig "| wc | awk ..." 
entfernt. 


Dann sieht das Testscript so aus:

== cut ==
#!/bin/bash

echo "Erste Version"
isrunning=`ps xufa | grep "$0" | grep -v grep`
echo $isrunning

echo "Zweite Version"
s=`ps xufa`
isrunning=`echo "$s" | grep "$0" | grep -v grep`
echo $isrunning

== cut ==


und der Output - manuell ein wenig aufgeh�bscht - so:

Erste Version
root 28658 0.0 0.2 2276 1028 pts/4 S+ 21:52 0:00 \_ /bin/bash 
/usr/local/bin/local-backup.sh 
root 28659 0.0 0.2 2276 1036 pts/4 R+ 21:52 0:00 \_ /bin/bash 
/usr/local/bin/local-backup.sh 
root 28661 0.0 0.2 2276 1036 pts/4 R+ 21:52 0:00 \_ /bin/bash 
/usr/local/bin/local-backup.sh 
root 28662 0.0 0.2 2276 1036 pts/4 R+ 21:52 0:00 \_ /bin/bash 
/usr/local/bin/local-backup.sh

Zweite Version
root 28658 0.0 0.2 2280 1036 pts/4 S+ 21:52 0:00 \_ /bin/bash 
/usr/local/bin/local-backup.sh

Es ist also richtig, da� in der ersten Version falsch gez�hlt wird. 

Nur wieso?


Mit freundlichem Grinsen

t++

Antwort per Email an