Bash-Script Frage
Erik Heinz
erik at iks-jena.de
Sa Mär 10 12:19:25 CET 2007
Hallo Martin,
On Sat, Mar 10, 2007 at 12:06:46PM +0100, Martin Jäger wrote:
> #!/bin/bash
> #startet Skype, sofern es noch nicht laeuft
>
>
> if [ "$(ps ax|grep -i "[s]kype")" ]
> then
> echo "Skype laueft"
> else
> echo "Skype laeuft nicht. Starte Skype..."
> /usr/bin/skype &
> fi
> <<<<<<<<<<<<<<
>
> Doch dieses liefert mir nur die falsche Angabe:
> >>>>>>>>>>>>>>
> user at rechner:/home/scripts$ ./skype_start.sh
> Skype laueft
Bei mir funktioniert das. Du kannst übrigens auch den Rückgabewert von grep
mit if auswerten:
if ps ax | grep -iq "[s]kype" ; then ... ; fi
> Kann mir jemand dieses Verhalten erklären ?
Nein. Lass Dir im Script den Inhalt von $(ps ax|grep -i "[s]kype")
ausgeben, dann sollte sich das aufklären.
Tschüs,
Erik