Генератор и расшифровка cron-выражений
Соберите расписание crontab кликами или вставьте готовое. Вы получите понятное описание, проверку каждого поля и 10 ближайших запусков в вашем часовом поясе.
Работает в браузереБез регистрацииНичего не загружается
Визуальный конструктор
Следующие 10 запусков
Как пользоваться: Генератор cron-выражений
- Введите cron-выражение, например
*/15 * * * *, или выберите шаблон. - Прочитайте описание, чтобы убедиться, что расписание делает то, что нужно. Некорректные поля подсвечиваются с указанием причины.
- Используйте вкладки Визуального конструктора, чтобы задать минуту, час, день месяца, месяц и день недели в режимах Каждую минуту/час/…, Шаг N, Выбрать или Диапазон.
- Проверьте 10 ближайших запусков и выберите часовой пояс сервера, если он отличается от вашего.
- Скопируйте выражение в crontab, Kubernetes CronJob,
scheduleв GitHub Actions или конфиг CI.
Синтаксис cron за минуту
Стандартное cron-выражение состоит из пяти полей, разделённых пробелами:
┌───────────── minute (0-59)
│ ┌─────────── hour (0-23)
│ │ ┌───────── day of month (1-31)
│ │ │ ┌─────── month (1-12 or JAN-DEC)
│ │ │ │ ┌───── day of week (0-7 or SUN-SAT, 0 and 7 are Sunday)
│ │ │ │ │
* * * * * command
| Символ | Значение | Пример |
|---|---|---|
* | любое значение | * * * * * каждую минуту |
, | список | 0 9,17 * * * в 09:00 и 17:00 |
- | диапазон | 0 9 * * 1-5 по будням в 09:00 |
/ | шаг | */10 * * * * каждые 10 минут |
@daily | макрос | то же, что 0 0 * * *; также @hourly, @weekly, @monthly, @yearly, @reboot |
Ловушка «день месяца / день недели»
Когда ограничены оба поля дней (ни одно не начинается с *), cron запускает задание, когда совпадает любое из них. Поэтому 0 0 13 * 5 сработает каждое 13-е число и каждую пятницу, а не только в пятницу 13-го. Генератор следует этому правилу Vixie cron, а в описании стоит «или», чтобы вы это заметили.
Часовые пояса и переход на летнее время
Cron использует локальный часовой пояс сервера, если не настроено иное (CRON_TZ= в некоторых реализациях cron, timeZone в Kubernetes CronJob; GitHub Actions всегда использует UTC). Выберите этот пояс в предпросмотре запусков. Задания, попадающие в «дыру» перехода на летнее время (например, 02:30 в ночь перевода часов вперёд), в предпросмотре пропускаются, потому что такого местного времени не существует.
Популярные расписания
*/5 * * * *: каждые 5 минут0 */2 * * *: каждые 2 часа, ровно в начале часа0 9 * * 1-5: в 09:00 по будням0 0 1 * *: в полночь первого числа каждого месяца0 3 * * 0: в 03:00 каждое воскресенье, типичное окно для бэкапа
Часто задаваемые вопросы
Как запускать cron-задание каждые 5 минут?
*/5 * * * *. Шаг /5 в поле минут означает каждую 5-ю минуту, начиная с 0: 00, 05, 10 и так далее.Поддерживает ли cron секунды?
Воскресенье — это 0 или 7?
SUN или MON-FRI.Почему задание запускается чаще, чем ожидалось?
*, чтобы учитывалось только другое.