Prozess zum absoluten Zeitpunkt beenden

490
user1330734

Ich möchte einen Befehl so lange wie möglich ausführen und ihn zu einem bestimmten absoluten Zeitpunkt abbrechen (falls er noch läuft), etwa:

killat "2018-06-09_23:55" ./myscript.bash 

Die Ressourcen, die ich gefunden habe, beziehen sich auf Tötungsvorgänge zu einem Zeitpunkt relativ zum Startzeitpunkt.

Der timeoutBefehl akzeptiert ein Argument für die Anzahl der Sekunden, nach denen der Prozess abgebrochen wird. Dies ist jedoch auch relativ zur Startzeit. Eine Lösung wäre, die Differenz zwischen dem Jetzt und der gewünschten Zeit zu berechnen und diese an zu übergeben timeout.

Ein anderer Weg könnte darin bestehen, einen einmaligen cronJob zur erforderlichen Zeit einzurichten, der nach einer aufgezeichneten PID sucht, und ein Kill-Signal zu senden.

Gibt es irgendwelche zweckgebundenen Alternativen dazu?

0
Klingt nach einem Job für unter: https://linux.die.net/man/1/at Mikael Kjær vor 6 Jahren 2
FYI cron läuft höchstens einmal pro Minute Abdussamad vor 6 Jahren 0

0 Antworten auf die Frage