*/5 * * * *Pola
| Minuta | */5 | 0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55 |
|---|---|---|
| Godzina | * | dowolna |
| Dzień miesiąca | * | dowolna |
| Miesiąc | * | dowolna |
| Dzień tygodnia | * | dowolna |
Gdzie go użyć
| crontab | */5 * * * * /path/to/script.sh |
|---|---|
| GitHub Actions | - cron: "*/5 * * * *" (on.schedule) |
| Kubernetes CronJob | schedule: "*/5 * * * *" |
crontab działa w strefie czasowej serwera; GitHub Actions zawsze używa UTC.
Warto wiedzieć
*/5 w polu minut uruchamia się w minutach 0, 5, 10 i tak dalej aż do 55, według zegara, a nie od chwili zapisania crontaba. Każde zadanie z */5 na każdym serwerze startuje w tej samej sekundzie, co może skokowo obciążyć współdzieloną bazę danych lub API; przesuń ciężkie zadania za pomocą 2-59/5, które uruchamia się w minutach 2, 7, 12 i kolejnych. Co 10 minut to */10.
Jeśli przebieg może trwać dłużej niż 5 minut, zabezpiecz go przez flock -n, żeby kopie się nie nakładały; w Kubernetes to samo robi concurrencyPolicy: Forbid. PATH i środowisko crona są minimalne, więc wywołuj programy po ścieżce bezwzględnej i wczytuj zmienne w skrypcie. Dopisuj wyjście do logu. GitHub Actions akceptuje */5 jako minimum, ale pod obciążeniem zaplanowane uruchomienia często startują z kilkuminutowym opóźnieniem.