Wie man jede Woche am Sonntag einen Crontab-Job ausführt
263
Ich versuche herauszufinden, wie man am Sonntag jede Woche einen Crontab-Job ausführt. Ich denke, das Folgende sollte funktionieren, bin mir aber nicht sicher, ob ich es richtig verstehe. Ist das folgende richtig?
Die Frage bezieht sich auf "Sonntag", aber die akzeptierte Antwort bezieht sich auf "Samstag". ¿?
Inigomedina
11
Verwenden Sie die Website https://crontab.guru/ , um einen beliebigen Cron-Ausdruck zu erstellen.
nbi
Antworten:
481
Hier ist eine Erklärung des Crontab-Formats.
# 1. Entry: Minute when the process will be started [0-60]
# 2. Entry: Hour when the process will be started [0-23]
# 3. Entry: Day of the month when the process will be started [1-28/29/30/31]
# 4. Entry: Month of the year when the process will be started [1-12]
# 5. Entry: Weekday when the process will be started [0-6] [0 is Sunday]
#
# all x min = */x
Demnach 5 8 * * 0würden Sie jeden Sonntag um 8:05 Uhr laufen.
Um besser lesbar zu sein, können Sie eines sun, mon, tue, wed, thu, fri, or satfür den Tag verwenden. Dies erspart Ihnen auch die Wahl zwischen 0oder 7für Sonntag.
Grippe
193
Um einen Cron am Sonntag ausführen zu lassen, können Sie eine der folgenden Methoden verwenden:
5 8 * * 0
5 8 * * 7
5 8 * * Sun
Wo 5 8steht die Tageszeit, zu der dies geschehen wird: 8:05.
Im Allgemeinen, wenn Sie etwas am Sonntag ausführen wollen, so stellen Sie sicher , dass die fünfte Spalte enthält entweder 0, 7oder Sun. Sie hatten 6, also lief es am Samstag.
Das Format für Cronjobs ist:
+---------------- minute (0 - 59)
| +------------- hour (0 - 23)
| | +---------- day of month (1 - 31)
| | | +------- month (1 - 12)
| | | | +---- day of week (0 - 6) (Sunday=0 or 7)
| | | | |
* * * * * command to be executed
Sie können crontab.guru jederzeit als Editor verwenden, um Ihre Cron-Ausdrücke zu überprüfen.
Nur um anderen zu helfen, den dummen Fehler zu vermeiden, den ich gerade gemacht habe, und stellen Sie sicher, dass Sie die Minute auf etwas anderes als * einstellen, sonst wird sie in jeder Minute dieser Stunde ausgeführt!
user2924019
40
Es folgt das Format der Crontab-Datei.
{Minute} {Stunde} {Tag des Monats} {Monat} {Wochentag} {Benutzer} {Pfad zum Shell-Skript}
Also, um jeden Sonntag um Mitternacht zu laufen (Sonntag ist normalerweise 0, in einigen seltenen Fällen 7):
Stimmen Sie ab, um zu erwähnen, wie der Befehl angegeben werden soll, der jedes Mal ausgeführt werden soll. (Die Benutzerspalte muss jedoch beim Bearbeiten über den Befehl "crontab" weggelassen werden.)
Joachim Wagner
1
Sonntag Mitternacht ist die 0 Stunde von Montag, dh 0 0 * * 1.
Fred Loney
5
Wenn Sie Ihre Cron-Werte angeben, müssen Sie sicherstellen, dass Ihre Werte innerhalb der Bereiche liegen. Zum Beispiel verwenden einige Cron einen Bereich von 0 bis 7 für den Wochentag, wobei sowohl 0 als auch 7 den Sonntag darstellen. Wir nicht (siehe unten).
Seconds: 0-59
Minutes: 0-59
Hours: 0-23
Day of Month: 1-31
Months: 0-11
Day of Week: 0-6
Position 1 for minutes, allowed values are 1-60
position 2 for hours, allowed values are 1-24
position 3 for day of month ,allowed values are 1-31
position 4 for month ,allowed values are 1-12
position 5 for day of week ,allowed values are 1-7 or and the day starts at Monday.
Herzlichen Glückwunsch zu Ihrer ersten Antwort bei StackOverflow! Bitte lesen Sie unbedingt den Antwortleitfaden . Beispielsweise sollte die Antwort normalerweise einige neue Informationen enthalten, die in vorhandenen Antworten fehlen.
doz10us
7
Dies wird 24 Mal am Sonntag ausgeführt, 10 Minuten nach der vollen Stunde.
Jens Timmerman
0
@ wöchentlich besser für mich arbeiten!
example,add the fellowing crontab -e ,it will work in every sunday 0:00 AM
@weekly /root/fd/databasebackup/week.sh >> ~/test.txt
* * * * 0
you can use above cron job to run on every week on sunday, but in addition on what time you want to run this job for that you can follow below concept :
* * * * * Command_to_execute
- � � � -
| | | | |
| | | | +�� Day of week (0�6) (Sunday=0) or Sun, Mon, Tue,...
| | | +���- Month (1�12) or Jan, Feb,...
| | +����-� Day of month (1�31)
| +������� Hour (0�23)
+��������- Minute (0�59)
Antworten:
Hier ist eine Erklärung des Crontab-Formats.
Demnach
5 8 * * 0
würden Sie jeden Sonntag um 8:05 Uhr laufen.quelle
sun, mon, tue, wed, thu, fri, or sat
für den Tag verwenden. Dies erspart Ihnen auch die Wahl zwischen0
oder7
für Sonntag.Um einen Cron am Sonntag ausführen zu lassen, können Sie eine der folgenden Methoden verwenden:
Wo
5 8
steht die Tageszeit, zu der dies geschehen wird: 8:05.Im Allgemeinen, wenn Sie etwas am Sonntag ausführen wollen, so stellen Sie sicher , dass die fünfte Spalte enthält entweder
0
,7
oderSun
. Sie hatten6
, also lief es am Samstag.Das Format für Cronjobs ist:
Sie können crontab.guru jederzeit als Editor verwenden, um Ihre Cron-Ausdrücke zu überprüfen.
quelle
Es folgt das Format der Crontab-Datei.
{Minute} {Stunde} {Tag des Monats} {Monat} {Wochentag} {Benutzer} {Pfad zum Shell-Skript}
Also, um jeden Sonntag um Mitternacht zu laufen (Sonntag ist normalerweise 0, in einigen seltenen Fällen 7):
quelle
0 0 * * 1
.Wenn Sie Ihre Cron-Werte angeben, müssen Sie sicherstellen, dass Ihre Werte innerhalb der Bereiche liegen. Zum Beispiel verwenden einige Cron einen Bereich von 0 bis 7 für den Wochentag, wobei sowohl 0 als auch 7 den Sonntag darstellen. Wir nicht (siehe unten).
Referenz: https://github.com/ncb000gt/node-cron
quelle
Cron Job Ausdruck in einer für Menschen lesbaren Weise Crontab Builder
quelle
Ich denke, Sie möchten diese interaktive Website, die mir oft hilft, komplexe Crontab-Anweisungen zu erstellen: https://crontab.guru/
quelle
10 * * * So.
quelle
@ wöchentlich besser für mich arbeiten!
example,add the fellowing crontab -e ,it will work in every sunday 0:00 AM @weekly /root/fd/databasebackup/week.sh >> ~/test.txt
quelle
quelle