0 0 * * 0Felder
| Minute | 0 | 0 |
|---|---|---|
| Stunde | 0 | 0 |
| Tag des Monats | * | beliebig |
| Monat | * | beliebig |
| Wochentag | 0 | 0 |
Wo du ihn verwendest
| crontab | 0 0 * * 0 /path/to/script.sh |
|---|---|
| GitHub Actions | - cron: "0 0 * * 0" (on.schedule) |
| Kubernetes CronJob | schedule: "0 0 * * 0" |
crontab läuft in der Zeitzone des Servers; GitHub Actions verwendet immer UTC.
Gut zu wissen
0 0 * * 0 läuft um Mitternacht zu Beginn des Sonntags, direkt nach dem Ende des Samstags. Wenn du Sonntagabend meinst, also das Ende der Woche, nimm 0 23 * * 0, oder 0 0 * * 1 für Montag 00:00. In Vixie cron und cronie bedeuten 0 und 7 beide Sonntag, und @weekly entspricht 0 0 * * 0. Quartz-basierte Scheduler nummerieren die Tage von 1 bis 7 mit Sonntag als 1, also prüfe das, bevor du kopierst.
Wöchentliche Jobs scheitern leise: War der Server am Sonntag um Mitternacht aus, holt cron nichts nach und du wartest eine weitere Woche, während anacron oder ein systemd-Timer mit Persistent=true verpasste Jobs nach dem Booten ausführt. Wöchentliche Wartung dauert oft lange, also nutze flock -n, logge die Ausgabe und füge ein Heartbeat-Monitoring hinzu. Für jeden zweiten Sonntag prüfe im Befehl die Kalenderwoche aus date +\%V.