Генератор cron-выражений

Расписание словами и ближайшие запуски для crontab, Spring, Hangfire и Quartz

Формат

Поля

Ближайшие запуски

    Поддерживаются *, списки через запятую, диапазоны 1-5, шаг */15, названия JAN–DEC и SUN–SAT, сокращения @daily, @hourly и другие. В форматах с секундами и Quartz — ещё L, W, # и ?.

    Как читать cron-выражение

    Cron-выражение — строка из нескольких полей через пробел. Каждое поле ограничивает одну единицу времени: минуты, часы, день месяца, месяц, день недели. Звёздочка означает «любое значение», */10 — «каждые десять», 1-5 — диапазон, а 1,15 — перечисление.

    Страница переводит выражение в обычную фразу и показывает, когда задача сработает в ближайшие разы. Так удобно проверить расписание до того, как добавлять его в crontab, Kubernetes CronJob, GitHub Actions, Spring @Scheduled, Hangfire или Quartz.

    Частые вопросы

    Чем отличаются форматы с 5, 6 и 7 полями?

    Классический crontab в Linux — 5 полей: минуты, часы, день месяца, месяц и день недели. Spring, Hangfire и node-cron добавляют в начало секунды — получается 6 полей. Quartz тоже начинается с секунд и может иметь седьмое поле — год.

    Почему задача с днём месяца и днём недели запускается чаще, чем ожидалось?

    Если в crontab заданы оба поля, например 0 0 1 * 1, задача сработает и 1-го числа, и в каждый понедельник: хватает любого совпадения. Quartz такого не допускает и требует знак ? в одном из полей.

    Как в Quartz нумеруются дни недели?

    В Quartz 1 — воскресенье, 7 — суббота. В crontab и Spring 0 и 7 — воскресенье, 1 — понедельник. Названия SUN–SAT одинаковы везде, поэтому с ними проще не ошибиться.

    В каком часовом поясе сработает задача?

    В часовом поясе сервера или того, что указан в настройках планировщика. Выберите его в списке, чтобы увидеть ближайшие запуски именно там. Время, которое пропускается при переходе на летнее время, в списке не показывается.

    Выражение отправляется на сервер?

    Нет. Разбор и расчёт запусков выполняются в браузере.