0 0 * * 0Pola
| Minuta | 0 | 0 |
|---|---|---|
| Godzina | 0 | 0 |
| Dzień miesiąca | * | dowolna |
| Miesiąc | * | dowolna |
| Dzień tygodnia | 0 | 0 |
Gdzie go użyć
| crontab | 0 0 * * 0 /path/to/script.sh |
|---|---|
| GitHub Actions | - cron: "0 0 * * 0" (on.schedule) |
| Kubernetes CronJob | schedule: "0 0 * * 0" |
crontab działa w strefie czasowej serwera; GitHub Actions zawsze używa UTC.
Warto wiedzieć
0 0 * * 0 uruchamia się o północy na początku niedzieli, zaraz po końcu soboty. Jeśli chodziło Ci o niedzielny wieczór, czyli koniec tygodnia, użyj 0 23 * * 0, albo 0 0 * * 1 dla poniedziałku 00:00. W Vixie cron i cronie zarówno 0, jak i 7 oznaczają niedzielę, a @weekly to 0 0 * * 0. Harmonogramy oparte na Quartzu numerują dni od 1 do 7, a niedziela ma numer 1, więc sprawdź to przed skopiowaniem.
Cotygodniowe zadania zawodzą po cichu: jeśli serwer nie działał o północy w niedzielę, cron nie nadrobi zaległości i czekasz kolejny tydzień, a anacron lub timer systemd z Persistent=true uruchamia pominięte zadania po starcie systemu. Cotygodniowa konserwacja często trwa długo, więc użyj flock -n, loguj wyjście i dodaj monitor heartbeat. Aby uruchamiać co drugą niedzielę, sprawdzaj w poleceniu numer tygodnia z date +\%V.