Ich suche nach einer in Ubuntu integrierten Methode, mit der ich ein Skript oder Programm oder was auch immer für einen festgelegten Zeitraum ausführen kann.
Ich habe ein Programm gefunden, das dies auf eine Weise tut, die ich mag , aber das Paket ist für Ubuntu nicht verfügbar. Auf jeden Fall hoffte ich auf etwas Eingebautes.
Das einzige, woran ich denken kann, ist, die aktuelle Zeit abzurufen und 30 Minuten vor 'jetzt' einen Cron-Job zu setzen, der das Programm beendet. Ich hatte gehofft, dass es einen Weg gibt, dies zu tun, ohne ein Skript einzurichten, aber wenn ich muss, wird es nicht das Ende der Welt sein. Nach dem 30-Minuten-Intervall möchte ich meinen Laptop in einen Ruhemodus versetzen, dies kann jedoch von der Timer-Sache getrennt sein.
Danke im Voraus.
quelle
Antworten:
Ich habe gerade folgendes geschrieben und es scheint zu funktionieren:
Natürlich sollten Sie Ping durch den Befehl ersetzen, den Sie ausführen möchten, und 3 durch ein Timeout in Sekunden. Lassen Sie mich wissen, wenn Sie eine ausführlichere Erklärung zur Funktionsweise benötigen.
quelle
!
. Nochmals Entschuldigung für die Verwirrung.Warum nicht verwenden
/usr/bin/timeout
?quelle
Eine einfache (und nicht viel getestete) Version von
hatimerun
:Informationen zum Festlegen der Uhrzeit finden Sie in der Manpage von at . Wie bei
at
der minimalen Zeitauflösung beträgt 1 Minute.Eine andere Möglichkeit ist die Verwendung von upstart anstelle dieses Skripts.
quelle
Verwenden von Perl:
Verwenden des Befehls timelimit:
Verwenden des Timeout-Befehls:
timeout -sHUP time command
quelle
timeout
Befehls.myname@myname:~$ myname@myname:~$ myname@myname:~$ myname@myname:~$
Bei jeder Eingabe wurde immer in derselben Zeile gearbeitet, anstatt zu einer anderen Zeile zu wechseln. Dann musste ich die Sitzung beenden und mich erneut anmelden. Der Perl-Befehl funktionierte jedoch einwandfrei, ohne dass ein Fehler auftrat.tput reset
löst dieses Problem