Programm/Bash/Cron

30/05/2010 - 16:39 von Rudolf E. Steiner | Report spam
Hallo.

Ich habe folgendes Problem:

Ich habe ein Programm fuer die Linux-Konsole, dessen Quellen leider
nicht offen sind. Nach Aufruf des Programms verrichtet dieses seine
Arbeit, beendet sich aber nicht korrekt.

Bei einem manuellen Aufruf reicht dann ein "Strg-c", um wieder "frei"
zu werden. Was ist aber die "dafuer vorgesehene Methode" bei
Verwendung von einem Bash-Script, welches die naechsten Schritte dann
natuerlich nicht ausfuehrt? Bei Verwendung des Programms ueber Cron
blockiert es dabei natuerlich auch die Abarbeitung der naechsten
Aufgaben.

Vielen Dank fuer die Unterstuetzung.

Rudolf E. Steiner
res-usenet@communicate.at
 

Lesen sie die antworten

#1 Alexander Bartolich
30/05/2010 - 19:15 | Warnen spam
Rudolf E. Steiner schrieb:
[...]
Bei einem manuellen Aufruf reicht dann ein "Strg-c", um wieder "frei"
zu werden. Was ist aber die "dafuer vorgesehene Methode" bei
Verwendung von einem Bash-Script, welches die naechsten Schritte dann
natuerlich nicht ausfuehrt?



Das folgende Skript startet ein Program ("vmstat") im Hintergrund,
merkt sich dessen Process-ID (Inhalt der Variablen "$!"), wartet
dann drei Sekunden, und beendet das Programm dann schließlich in dem
es das Signal SIGTERM schickt.

#!/bin/sh
vmstat 60 &
pid_of_last_process=$!
sleep 3
kill $pid_of_last_process

Strg+C löst an sich SIGINT aus und nicht SIGTERM, das sollte aber
keinen Unterschied machen.

Lass die Leute reden und làchle einfach mild,
Die meisten Leute haben ihre Bildung aus der Bild.
Und die besteht nun mal, wer wüsste das nicht,
aus: Angst, Hass, Titten und dem Wetterbericht!

Ähnliche fragen