An welchem ​​Tag / zu welcher Uhrzeit beginnt eine wöchentliche Cron?


8

Ich habe mir den Cron-Mann angesehen, aber nichts gefunden, was geholfen hätte :(

Weiß jemand?


Dies ist eher für Superuser geeignet, oder?

Antworten:


16

Ich gebe hier eine alternative Antwort, obwohl Trevor richtig ist.

Das @weeklySchlüsselwort cron macht genau das, was er erwähnt hat. Die meisten Distributionen verwenden run-partsjedoch ihre eigenen geplanten Crontab-Dateien (stündlich, täglich, wöchentlich und monatlich), bei denen die Schlüsselwörter von cron nicht verwendet werden.

/etc/cron.weeklyZum Beispiel hat Ubuntu eine, die für jeden Cronjob eine eigene Datei enthält.

Dies ist allgemein definiert in /etc/crontab

Ubuntus karmische Version 9.10 enthält Folgendes /etc/crontab

17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )

Die wöchentliche Crontab in Ubuntu findet am Sonntag um 6.47 Uhr statt

Hinweis: Wenn Sie nach Manpages für Crontab-Implementierungen suchen, möchten Sie diese man 5 crontabanstelle von nur verwenden man crontab. Letzteres gibt Ihnen nur die Syntax für den Befehl crontab. Ersteres gibt Ihnen Details zur Crontab-Implementierung.


Ein bisschen pingelig hier, Abschnitt 5 in den Manpages ist für Dateiformate und Konventionen, also nicht ganz implementiert. Es gibt das Dateiformat an und hat oft Beispiele
— Steve Buzonas

7 ist Sonntag? Ich dachte 0 war Sonntag? (Und wenn es um 1 anfing, würde ich denken, dass 1 Sonntag war.)
— felwithe

@felwithe Sonntag ist sowohl 0 als auch 7, sodass Sie auswählen können, welcher Tag am besten zum ersten Tag der Woche in Ihrem Gebietsschema passt (Montag vs. Sonntag).
— László van den Hoek

Ich denke, das ist falsch, also hilf mir zu verstehen : So the weekly crontab in Ubuntu is run at 6.47am on Sunday. Dies ist falsch, da der test -x /usr/sbin/anacron ||Teil des Befehls besagt, dass NUR das Material rechts von ausgeführt werden soll, ||wenn "/ usr / sbin / anacron" NICHT ausführbar ist oder nicht vorhanden ist, dies jedoch der Fall ist, sodass der Befehl run-partstatsächlich nie ausgeführt wird cron! Vielmehr anacronmuss es seinen Umgang, nicht wahr? Die Tabelle von Aanacron in "/ etc / anacrontab" zeigt dies für wöchentlich: Dies 7 10 cron.weekly run-parts --report /etc/cron.weeklybedeutet, dass der wöchentliche Job jeden 7. Tag mit einer Verzögerung von 10 Minuten ausgeführt wird.
— Gabriel Staples

Aber ... ich weiß nicht, wann Anacron tatsächlich läuft oder wie es das bestimmt. Machst du?
— Gabriel Staples


0

Die Antwort liegt in der Manpage für die Crontab selbst, ( man 5 crontab):

Diese speziellen Zeitangaben "Spitznamen" werden unterstützt, die die 5 anfänglichen Zeit- und Datumsfelder ersetzen und denen das Zeichen '@' vorangestellt ist:

@reboot    :    Run once after reboot.
@yearly    :    Run once a year, ie.  "0 0 1 1 *".
@annually  :    Run once a year, ie.  "0 0 1 1 *".
@monthly   :    Run once a month, ie. "0 0 1 * *".
@weekly    :    Run once a week, ie.  "0 0 * * 0".
@daily     :    Run once a day, ie.   "0 0 * * *".
@hourly    :    Run once an hour, ie. "0 * * * *".

Es 0 0 * * 0ist also 00:00 Uhr (an jedem Datum eines jeden Monats), solange es Sonntag ist (Wochentag 0).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.