Master Tom Geschrieben 23. Mai 2004 Geschrieben 23. Mai 2004 Hallo, ich suche eine möglichkeit abzufragen, ob ein bestimmtes Programm noch läuft, andernfalls soll es neu gestartet werden. Wie kann ich sowas anstellen ?
nic_power Geschrieben 23. Mai 2004 Geschrieben 23. Mai 2004 Hallo, aus der Shell heraus oder bist Du auf der Suche nach einem Stück Programmcode (C, C++)? Nic
Master Tom Geschrieben 23. Mai 2004 Autor Geschrieben 23. Mai 2004 Ich suche eher nen Code, wo ich z.B. als cronjob laufen lassen kann.
robotto7831a Geschrieben 23. Mai 2004 Geschrieben 23. Mai 2004 Mit ps -aef | grep programmname kann man in der Prozessliste sehen ob das Programm läuft. Frank
nic_power Geschrieben 23. Mai 2004 Geschrieben 23. Mai 2004 Hallo, Mit ps -aef | grep programmname Das Problem dabei ist, dass man auch den grep-Prozess findet. Sofern Du die PID kennst, kannst Du mir "ps -p <pid>" abfragen, ob der Prozess läuft. Unter SuSe gibt es "checkproc", welches anhand des Dateinamens oder der PID den Status abfragt: /sbin/checkproc /bin/bash liefert als Exit-Code 0 sofern eine Bash läuft. Ansonsten muss Du Dir was mit "ps" und "awk" zusammenbauen: ps aux | awk '/schnulli/ && !/awk/ {print $2}' Liefert die PID des Prozesses mit dem Namen "schnulli" (sofern dieser läuft). Je nach Unix-Derivat musst Du ggf. etwas mit den Optionen von ps rumexperimentieren. Nic
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden