Ich möchte alle 2 Stunden eine kleine Überwachungs-JAR-Datei auf meinem Ubuntu-Computer ausführen.
java -jar mymonitoringtool.jar
Ich weiß nicht, wie ich es einrichten soll.
Kommentare
- cron ist dein Freund dafür.
- Was muss beim Umschalten auf / von Sommerzeit passieren? Ist es sehr wichtig, dass der Job alle zwei Stunden ausgeführt wird und dann keine Stunde überspringen oder hinzufügen darf?
- Ja, es sollte alle zwei Stunden ausgeführt werden. Kein Überspringen, denke ich, da es nicht effektiv 2 Stunden Überwachung darstellen würde, sondern weniger als 2 Stunden. Wir planen, einige Statistiken darüber auszuführen. Daher ist die Dauer von Bedeutung.
Antwort
Sie können eine Crontab mit dem folgenden Ausdruck für Ihre Anforderungen einrichten.
0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar &> path/to/monitor-$(date "+%Y%b%d-%H%M%S").log
Sie sollten zuerst nach vorhandenen Cron-Jobs suchen, indem Sie crontab -l
ausführen.
Wenn Sie dies nicht tun Haben Sie noch keine Cron-Jobs, können Sie die a setzen Über der Zeile in einer Textdatei (z. B. my-cron-job.txt) und crontab my-cron-job.txt
ausführen, um sie zu aktivieren. Sie können dann überprüfen, ob der Job hinzugefügt wurde, indem Sie crontab -l
erneut ausführen.
Wenn bereits Cron-Jobs vorhanden sind, müssen Sie crontab -e
und bearbeiten Sie die crontab-Datei. Dazu müssen Sie mit einem Befehlszeileneditor (standardmäßig vi) arbeiten.
Der cron-Daemon legt nur eine begrenzte Anzahl fest Daher ist es vorzuziehen, den vollständigen Pfad zur ausführbaren Java-Datei anzugeben. Sie müssen auch den vollständigen Pfad zu Ihrer ausführbaren JAR-Datei angeben.
Ich gehe davon aus, dass Sie die Ausgabe mit dem Befehl java -jar
erfassen möchten Ich habe dem Befehl eine Protokolldatei hinzugefügt. Die Ausgabe- und Fehlerströme des Befehls werden in diese Protokolldatei umgeleitet, die mit einem Zeitstempel versehen wird (z. B. monitor-2018Nov03-200000.log).
Sobald alles eingestellt ist, sollten Sie den Cron-Job für die ersten ein oder zwei Ausführungen überwachen. Wenn alles nach Bedarf funktioniert, können Sie es laufen lassen.
Als externe Referenz , hier ist eine Einführung in Cron Jobs. Dies soll Ihnen helfen, die Funktionsweise der Zeitplanung zu verstehen.
https://www.howtoforge.com/a-short-introduction-to-cron-jobs
Antwort
cron ist der interne Jobplaner von Linux. Dies hilft beim Planen, dass Ihr Befehl in einem bestimmten Intervall oder einer bestimmten Datums- / Uhrzeit ausgeführt wird.
Geben Sie
crontab -e
auf dem Terminal ein.Fügen Sie diese Zeile hinzu
0 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar
Speichern und Beenden
Crontab-Syntax wie folgt
00 */2 * * * path/to/java -jar path/to/mymonitoringtool.jar
0. Minute jede 2. Stunde jeden Tag jeden Monat jeden Wochentag Führen Sie diesen Befehl aus
Weitere Optionen und Informationen: https://help.ubuntu.com/community/CronHowto
Kommentare
- Ist Pfad / zu / Java erforderlich, wenn ich JAVA_HOME eingerichtet habe? Ich kann sehen, dass Java-Version auf meinem Computer funktioniert.
- nicht erforderlich Pfad hinzufügen, wenn Umgebungsvariable (JAVA_HOME) eingestellt ist. Aber irgendwie, wenn die Umgebungsvariable durcheinander gebracht wurde, wird der hinzugefügte Java-Pfad in Cronjob ' nicht bremsen