Am Donnerstag, 24. November 2005 12:12 schrieb Johanns Schneider:
hi folkz, ich hab mal ne frage, und zwar nutze ich bei mir als WM blackbox 0.65 und lade mehrere programme automatsch in die slit. (via wmpinboard & wmcalc & bbpager...) dummerweise laden die progis nicht immer gleich schnell, so das die reihenvolge teilweise vertauscht ist. Jetzt meine Frage, gibt es eine möglichkeit zu sagen, lade programm 1, warte bis programm 1 ordentlich gestarted wurde, starte programm 2,....
ich hoffe ihr könnt mir helfen, greatz Johannes
prog1& prog2 startet prog1 im Hintergrund, es wird NICHT gewartet bis prog1 terminiert hat. Die shell führt sofort prog2 aus prog1; prog2 startet prog1 wartet bis es terminiert hat, daann wird prog2 gestartet prog1 && prog2 startet prog1, wartet bis es fertig ist, liefert es 0 als Exit-Code (also "alles ok") dann und nur dann wird prog2 gestartet prog1 || prog2 startet prog1, wartet bis es fertig ist, liefert es einen Wert != 0 als Exit-Code (also "irgend was ging schief") dann und nur dann wird prog2 gestartet wenn man will, daß Programme im Hintergrund in einer bestimmten Reihenfolge gestartet werden kann man das so machen: prog1 & sleep x ; prog2 & sleep x ; prog3 & wobei x ein Wert in Sekunden ist. Das klappt _meistens_. Ausser ein Programm braucht eine bestimmte Zeitspanne > x, um "ordnlich" zu stareten. Andere Möglichkeit: feststellen was "ordentlich gestartet heisst", z.B. eine bestimmte Datei wurde erzeugt, und eben auf diese Datei pollen: prog1 & while [ ! -f datei ]; do sleep 1; done prog2 (Achtung, wenn prog1 diese Datei (aus welchen Gründen auch immer) nicht erzeugt, dann hat man hier eine schöne Endlosschleife Bye Jürgen -- Dr.rer.nat. Juergen Vollmer, Viktoriastrasse 15, D-76133 Karlsruhe Tel: +49(721) 92 04 87 1 Fax: +49(721) 92 04 87 2 Juergen.Vollmer@informatik-vollmer.de www.informatik-vollmer.de Internet-Telefonie: www.skype.com Benutzer: juergen.vollmer