Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

wait für beliebigen process

Alles rund um die verschiedenen Konsolen und shells sowie die Programmierung unter Linux

Moderator: Moderatoren

Antworten
apollo
Newbie
Newbie
Beiträge: 26
Registriert: 16. Feb 2005, 15:14

wait für beliebigen process

Beitrag von apollo »

Hallo an alle!

Code: Alles auswählen

#~> sleep 10 &
[1] 23889
#~> wait 23889
Dieser wait funktioniert nur, wenn man ihn in der gleichen Shell startet. Gibt's so einen ähnlichen Befehl, den man für alle Prozesse einsetzten kann?

Eine Kontruktion "ps -ef | grep" kommt mir zu unsauber vor ...
Benutzeravatar
snaewe
Hacker
Hacker
Beiträge: 415
Registriert: 13. Dez 2004, 16:32
Wohnort: Zu Hause

Re: wait für beliebigen process

Beitrag von snaewe »

apollo hat geschrieben:Eine Kontruktion "ps -ef | grep" kommt mir zu unsauber vor ...
Kann aber manchmal der einzig gangbare Weg sein.
Ansonsten geht natürlich 'cmd1 ; cmd2'. Da werden beide cmd's nacheinander ausgeführt.

Was haste'n vor?

Stefan
Der Name Windows stammt ursprünglich aus dem Indianischen und
bedeutet: "Weißer Mann, der auf eine Sanduhr starrt."
apollo
Newbie
Newbie
Beiträge: 26
Registriert: 16. Feb 2005, 15:14

Re: wait für beliebigen process

Beitrag von apollo »

snaewe hat geschrieben:Was haste'n vor?
1. Rechner A startet per rsh auf Rechner B einen Prozess im Hintergrund
2. Rechner C sieht per rsh nach, ob Rechner B den Prozess beendet hat. Der Returncode des Prozesses ist enorm wichtig!!

Wait wäre eine schöne Lösung. Der Returncode wird ja durchgereicht. Aber ich muss wahrscheinlich mit einer Triggerdatei "echo $? > trigger.txt arbeiten.
Benutzeravatar
TeXpert
Guru
Guru
Beiträge: 2166
Registriert: 17. Jan 2005, 11:22

Beitrag von TeXpert »

das sauberste wäre sicherlich dann aber eine solche Konstruktion:

auf Rechner B läuft ein Serverprozess

Rechner A connected und übergibt Startparameter

Rechner C_1 bis C_n connected und übergibt Prozessnamen, anschließend wait.

nach Connect von A forkt der Serverprozess auf B den Client, nach dem Prozess-Ende werden alles C_i die auf den Prozess warten benachrichtigt.

Code: Alles auswählen

# to resolve all your problems, try this:
HOWTO='pack c5,41*2,sqrt 7056,unpack(c,H)-2,oct 115' && perl -le "print $HOWTO"
Ich beantworte keine Supportfragen per PM!
Antworten