Все инструменты

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

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

Ваше выражение cron

Каждые 5 минут, каждый день.

Поле за полем

0-59

0-23

1-31

1-12 или JAN-DEC

0-6 или SUN-SAT

Пять ближайших запусков

    Это работает в вашем браузере. Ничего из того, что вы вставляете или открываете, нам не отправляется.

    Пять полей

    В строке cron пять полей, разделённых пробелами, и идут они всегда в одном порядке: минута, час, день месяца, месяц, день недели. Минута от 0 до 59, час от 0 до 23, день месяца от 1 до 31, месяц от 1 до 12, день недели от 0 до 6, причём воскресенье это и 0, и 7. Месяц и день недели принимают ещё и английские трёхбуквенные имена, так что JAN и MON работают наравне с 1 и 1.

    Звёздочка, запятая, дефис и косая черта

    Звёздочка означает все значения, какие может принять поле. Запятая разделяет значения, поэтому 0,30 - это в начале часа и в половине. Дефис задаёт диапазон, поэтому 1-5 в поле дня недели - это с понедельника по пятницу. Косая черта задаёт шаг, поэтому */15 в поле минут - это каждые четверть часа, а 0-30/10 шагает внутри диапазона, а не по всему полю. Одно правило сбивает с толку чаще прочих: если и день месяца, и день недели содержат что-то кроме звёздочки, cron запускает задание по любому из них, а не только там, где они совпадают.

    Сокращения

    Пять сокращений заменяют целую строку. @hourly это 0 * * * *, @daily и @midnight это 0 0 * * *, @weekly это 0 0 * * 0, @monthly это 0 0 1 * *, а @yearly и @annually это 0 0 1 1 *. Вставьте любое из них выше, и оно раскроется в те пять полей, за которые стоит, чтобы поля и выражение никогда не расходились. За @reboot вообще нет никаких часов, поэтому перечислять здесь нечего.

    Вопросы о выражениях cron

    Минута, час, день месяца, месяц и день недели, именно в этом порядке. Звёздочка в поле означает все значения, какие оно может принять, поэтому пять звёздочек - это каждая минута каждого дня.

    Задание запустится по любому из них. Когда день месяца и день недели ограничены оба, Vixie cron считает их объединением: 0 0 1 * 1 запускается первого числа месяца и каждый понедельник, а не только тогда, когда первое число выпадает на понедельник.

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

    Нет. Quartz добавляет поле секунд в начало и необязательный год в конец, а ещё понимает L, W, решётку и знак вопроса. Это расширения Quartz, а не cron, поэтому страница называет символ, с которым не может работать, вместо того чтобы молча вернуть неверный ответ.

    Выкатите расписание и сохраните доказательства

    Сработавшее по расписанию задание - это только половина истории. Session Replay сохраняет страницу, консоль и упавший запрос вместе, поэтому следующая сломанная задача приходит уже со всем, что нужно для починки.