Um 00:00, an Tag 1 des Monats

0 0 1 * *

Felder

Minute00
Stunde00
Tag des Monats11
Monat*beliebig
Wochentag*beliebig

Wo du ihn verwendest

crontab0 0 1 * * /path/to/script.sh
GitHub Actions- cron: "0 0 1 * *" (on.schedule)
Kubernetes CronJobschedule: "0 0 1 * *"

crontab läuft in der Zeitzone des Servers; GitHub Actions verwendet immer UTC.

Gut zu wissen

0 0 1 * * läuft um Mitternacht am 1. jedes Monats, genau wie @monthly. Abrechnungen, Rechnungen und Monatsberichte landen meist hier, also leg fest, welche Zeitzone „den 1.“ definiert: Auf einem UTC-Server ist in Amerika noch der letzte Tag des Vormonats. Ein Bericht über den letzten Monat sollte seinen Zeitraum aus dem Ausführungsdatum berechnen und nie 30 oder 31 Tage annehmen.

Vixie cron und cronie haben keine Syntax für den letzten Tag des Monats; lass den Job um 0 0 28-31 * * laufen und prüfe im Befehl, zum Beispiel test $(date -d tomorrow +\%d) = 01 && /path/to/script.sh. Quartz und manche Cloud-Scheduler unterstützen stattdessen L. Vorsicht bei der ODER-Regel: 0 0 1 * 1 läuft am 1. und an jedem Montag, nicht an Montagen, die auf den 1. fallen.

Cron-Ausdrücke erstellen und erklären öffnen