Schönen Sonntag morgen allerseits, ich habe eine Frage:
Ich möchte mit einem Shell Script (logischerweise unter Linux) anhand eines Datei namens, eines programmes überprüfen ob das Programm bzw. der Prozess gestartet ist und wenn das nicht der Fall ist, soll das Script den Server starten.
Hat dazu jemand eine Idee, weil ich habe schon gegoogelt, aber es sieht so aus als ob ich der erste wäre der sich dafür interessiert
Ich weis, dass es soetwas unter Windows gibt, aber für Linux habe ich leider noch nichts gefunden...
Mfg Janson
Seite 1 von 1
Shell Script | Prozess Pid Auslesen Und überprüfen
Anzeige
#2 _lustiger_affe_
geschrieben 03. Mai 2009 - 09:52
ps aux | grep $name?
$name ist case-sensitive, solange du an grep kein "-i" anhängst. Das ergibt bei mir für Opera z.B.
$user 1489 0.0 0.0 6512 792 pts/4 S+ 10:48 0:00 grep opera $user 13569 2.3 2.5 291488 102524 tty1 Sl 09:05 2:28 /opt/opera/lib/opera/9.64/opera $user 14064 2.9 0.8 290760 33036 tty1 SN 09:14 2:48 /opt/opera/lib/opera/9.64//operapluginwrapper-native 61 64 /usr/lib64/nsbrowser/plugins/libflashplayer.so $user 14065 0.0 0.0 11488 832 tty1 S 09:14 0:00 /opt/opera/lib/opera/9.64//operaplugincleaner 13569Um das "grep" aus der Ausgabe rauszubekommen, einfach oben noch ein
| grep -v grepdran gehauen.
Wenn du die PID willst, einfach noch
| awk '{print $2}'hinten dran.
Alternativ dazu, sofern auf deinem System vorhanden, einfach
pidof $name
Edit, das funktioniert natürlich nur, wenn das gewünschte auch via ps zu sehen ist. Alternativ, lass dein Skript doch einfach eine PID anlegen und schau dann nach, ob sie existiert, z.B.
#!/bin/zsh PID_FILE=/tmp/.mypid function do_stuff() { echo "hier der sinnvolle content, wenn noch nix läuft" touch $PID_FILE } function kill_it() { echo "hier das zeug zum killen" rm -f $PID_FILE } ( [[ ! -e $PID_FILE ]] && do_stuff ) || kill_it
Dieser Beitrag wurde von lustiger_affe bearbeitet: 03. Mai 2009 - 10:01
Thema verteilen:
Seite 1 von 1