Hilfe bei Shellscript erbeten
Maximilian Wilhelm
max at rfc2324.org
Thu Apr 17 14:24:38 CEST 2008
Am Thursday, den 17 April hub Andre Landwehr folgendes in die Tasten:
> > > num=$(($(ps aux|grep soffice|wc -l) - 1))
> > Und weil in 'grep soffice' ein 'soffice' vorkommt, ziehst Du hinterher
> > wieder eins ab? Was, wenn die shell noch dabei ist, den grep zu
> > starten? Dann bekommst Du eins zuwenig dabei heraus...
> > pgrep!
> und wenn schon normales grep, dann gleich ganz richtig:
> ps aux |grep soffice |grep -v "ps ax" |grep -v "grep" |wc -l
Och komm...
ps -ef | grep soffce | grep -c -v 'ps ax\|grep'
> > > > if [ test $num == "0" ] ; then
> > Was ist das denn?
> > if [ $num = 0 ]; then
> > ...
> > fi
> Alternativ könnte man $num auch als Zahl behandeln und nicht als String
> (denn nur die vergleicht man mit '=' oder '==')
> if [ $num -eq 0 ]; then
> ...
> fi
Das hat potentiell auch Fussschussgefahr, wenn in $num mal kein
numerischer Wert drinsteht - warum auch immer.
Und Quotes sollte man *immer* und _überall_ nutzen.
Ciao
Max
--
Follow the white penguin.
More information about the Linux
mailing list