DevToolPal
UK

Cron-вираз

Щогодини

Запускається в нульову хвилину кожної години, 24 рази на добу. Те саме, що макрос @hourly.

0 * * * * Відкрити в парсері cron-виразів

Розбір за полями

Поле Значення Відповідає
Хвилина 0 0
Година * Будь-яке значення
День місяця * Будь-яке значення
Місяць * Будь-яке значення
День тижня * Будь-яке значення

Найближчі запуски

Приклад: перші 6 запусків після 1 січня 2026 р. (UTC).

  1. чт, 1 січ. 2026 р., 01:00
  2. чт, 1 січ. 2026 р., 02:00
  3. чт, 1 січ. 2026 р., 03:00
  4. чт, 1 січ. 2026 р., 04:00
  5. чт, 1 січ. 2026 р., 05:00
  6. чт, 1 січ. 2026 р., 06:00

Готові варіанти

crontab
0 * * * * /path/to/command

Додайте рядок через crontab -e. Завдання виконується в часовому поясі сервера, якщо не задано CRON_TZ або TZ.

Kubernetes CronJob
apiVersion: batch/v1
kind: CronJob
metadata:
  name: every-hour
spec:
  schedule: "0 * * * *"
  timeZone: "Etc/UTC"
  concurrencyPolicy: Forbid
  jobTemplate:
    spec:
      template:
        spec:
          restartPolicy: OnFailure
          containers:
            - name: job
              image: busybox:1.36
              command: ["/bin/sh", "-c", "date; echo run"]

Задайте spec.timeZone (Kubernetes 1.27+); без нього розклад іде за часовим поясом controller manager, зазвичай UTC.

GitHub Actions
on:
  schedule:
    - cron: '0 * * * *'
  workflow_dispatch:

GitHub Actions завжди використовує UTC, приймає інтервали від 5 хвилин і під навантаженням може запускати завдання із запізненням.

Quartz
0 0 * * * ?

У Quartz секунди стоять першими, а в дні місяця чи дні тижня потрібен знак ?. Дні тижня мають номери 1–7 від неділі, тож надійніше писати назви.

Spring
@Scheduled(cron = "0 0 * * * *")

Spring @Scheduled(cron = …) приймає шість полів: секунди, а потім звичайні п’ять.

Часті запитання

› Чому для щогодинних завдань краще уникати хвилини 0?

Багато завдань стартує рівно на початку години, створюючи піки навантаження на спільні сервери та API. Якщо точний час не важливий, оберіть випадкову хвилину, наприклад 17 * * * *.

› У якому часовому поясі виконується 0 * * * *?

Cron використовує часовий пояс машини чи сервісу, що його запускає. У Linux це системний пояс, якщо не задано CRON_TZ або TZ; CronJob у Kubernetes підтримує spec.timeZone; GitHub Actions завжди працює в UTC.

› Як перевірити розклад перед розгортанням?

Відкрийте 0 * * * * у парсері cron-виразів на цьому сайті. Він пояснить кожне поле й покаже найближчі запуски за місцевим часом або в UTC просто в браузері.