Генератор cron-выражений
Работает в обе стороны. Собирает строку расписания из понятных полей — каждый час, по будням в 9:30, первого числа месяца — и наоборот, разбирает готовое выражение и объясняет его по-русски.
Выражение
Что это значит
Пять полей и четыре знака
Строка cron задаёт расписание пятью полями: минуты, часы, день месяца, месяц и день недели. Инструмент работает в обе стороны — собирает выражение из понятных полей и разбирает готовую строку на человеческий язык, показывая ближайшие даты запуска.
В каждом поле работают четыре знака. Звёздочка означает любое значение, запятая перечисляет, дефис задаёт диапазон, косая черта — шаг. Запись «*/15» в минутах даёт запуск каждые пятнадцать минут, «1-5» в дне недели — по будням, «0 9 * * 1» — каждый понедельник в девять утра.
Главная ловушка — совпадение дня месяца и дня недели. Когда оба поля заданы явно, задача выполняется в объединении условий, хотя ждёшь пересечения: запись «0 0 13 * 5» запустит её и тринадцатого числа, и каждую пятницу. Это поведение унаследовано от первых реализаций и закреплено стандартом.

| Выражение | Когда сработает |
|---|---|
| 0 * * * * | Каждый час ровно |
| */15 * * * * | Каждые 15 минут |
| 30 9 * * 1-5 | По будням в 9:30 |
| 0 3 1 * * | Первого числа в 3 часа ночи |
| 0 0 * * 0 | Каждое воскресенье в полночь |
От Unix V7 до демона Пола Викси
Первый cron появился в седьмой редакции Unix в 1979 году и был устроен наивно: он просыпался каждую минуту и перечитывал таблицу заданий целиком. На машине с десятком пользователей это работало, на большой системе стало заметной нагрузкой.
Современную версию написал Пол Викси в 1987 году. Его демон читает таблицу один раз, держит задания в очереди и просыпается ровно к следующему сроку. Vixie cron разошёлся по всем системам семейства Unix и остаётся основой до сих пор.
Название идёт от греческого «хронос» — время. Формат из пяти полей за сорок с лишним лет почти не изменился, и строка, написанная в восьмидесятые, работает сегодня без правок. Расширения вроде секундного поля или записи «@daily» появились позже и поддерживаются не везде. Современные системы часто заменяют cron собственными планировщиками с журналом, зависимостями и повторными попытками, но синтаксис из пяти полей они обычно сохраняют ради привычки.

Как проверить расписание и куда не ставить запуск
Соберите расписание полями или вставьте готовую строку для разбора. Обязательно посмотрите на список ближайших запусков: он сразу показывает, если выражение поняли не так. Ошибка в поле дня недели или лишняя звёздочка чаще всего видна именно по датам.
Ставьте тяжёлые задачи на нечётное время. Запуск ровно в полночь и ровно в полдень — самые загруженные минуты на любом сервере, потому что туда сходятся расписания всех сервисов сразу. Сдвиг на семь минут заметно разгружает пик.
Учтите часовой пояс сервера и переход на летнее время там, где он есть: задача, назначенная на два часа ночи, в день перевода стрелок может не выполниться совсем или выполниться дважды. Перевести время между поясами поможет конвертер часовых поясов.
Логируйте запуски. Демон расписания молчалив: если задача упала, вы узнаете об этом только по последствиям. Простейшая защита — писать в файл время старта и код возврата, а на длинных задачах ещё и проверять, что предыдущий запуск завершился.
Проверьте, от чьего имени работает задание. Демон расписания запускает команду с урезанным окружением: переменные, которые есть в вашей оболочке, там отсутствуют, и скрипт, работающий из консоли, по расписанию падает. Пути к программам в таком задании пишут полностью.
| Полей в строке | пять |
| Порядок полей | минуты, часы, день, месяц, день недели |
| Любое значение | звёздочка |
| Шаг | косая черта |
| Первый cron | Unix V7, 1979 |
| Vixie cron | 1987 |
| День месяца и недели вместе | объединение условий |
| Происхождение названия | греческое «время» |
Как пользоваться
Под ответом список ближайших десяти запусков с датами и днями недели: это самый быстрый способ убедиться, что задача пойдёт тогда, когда вы думаете. Отдельно инструмент предупреждает о классических ловушках: одновременно заданные день месяца и день недели складываются по «или» (совпадения сразу двух условий cron не требует), а 31 число просто пропускается в коротких месяцах.
- Минуты, часы, дни, месяцы и дни недели. Каждое поле принимает списки, диапазоны и шаги.
- Поле сверху принимает строку из пяти частей — она сразу разберётся по полям.
- Инструмент переводит выражение на русский и подсвечивает ошибочные части.
- Десять дат вперёд от текущего момента — так видно реальное поведение расписания.
Частые вопросы
Из чего состоит строка crontab
Из пяти полей через пробел: минуты (0–59), часы (0–23), день месяца (1–31), месяц (1–12) и день недели (0–7, где 0 и 7 — воскресенье). Дальше идёт команда, но её инструмент не трогает. Шестое поле с секундами встречается в планировщиках приложений, в системном cron его нет.
Что означают символы в полях
Звёздочка — любое значение. Запятая перечисляет: 1,15 — первое и пятнадцатое. Дефис задаёт диапазон: 9-18. Слэш задаёт шаг: */15 в минутах означает каждые пятнадцать минут, а 0-30/10 — на нулевой, десятой, двадцатой и тридцатой.
Почему задача с 31 числом иногда не запускается
Потому что в феврале, апреле, июне, сентябре и ноябре такого дня нет, и cron просто пропускает месяц. Если задача должна идти в последний день месяца, обычный приём — запускать её первого числа следующего и работать с прошлым периодом либо ставить проверку внутри самого скрипта.
Как складываются день месяца и день недели
По «или»: достаточно совпадения одного из двух полей. Это самая частая ошибка. Выражение «0 0 1 * 1» запустит задачу и первого числа каждого месяца, и каждый понедельник. Чтобы получилось именно «первый понедельник», одно из полей оставляют звёздочкой и добавляют проверку в скрипте. Инструмент предупреждает, когда оба поля заданы одновременно.
В каком часовом поясе идут запуски
В том, который стоит на сервере. Это регулярно ломает расписания после переезда и при работе с командой в других часовых поясах: строка та же, а время другое. Ближайшие запуски здесь считаются по времени вашего браузера — сверяйте с сервером.
Что происходит при переводе часов
В странах с сезонным переводом задача, назначенная на пропавший час, в этот день пропускается, а назначенная на повторяющийся выполняется дважды. В России перевода нет с 2014 года, но если сервер стоит за границей, это стоит держать в голове.
Спросите нейросети об инструменте
Похожие инструменты
Который час в другом городе и на сколько часов он впереди. Полоса суток с отметкой рабочего окна показывает, когда удобно созвониться.
ОткрытьЛинейка онлайнСантиметры и дюймы на экране, вертикальный и полноэкранный режимы, метки для замера предмета и калибровка по банковской карте, монете или диагонали.
ОткрытьКонверт распечататьРазвёртка конверта из листа A4 для склейки: C6, DL, для денег, мини и квадрат с поздравлением, эмодзи и узором; адрес «Кому и Куда» с индексом на готовом конверте C6, DL, C5, C4. PDF в размер и PNG 300 dpi.
ОткрытьМакет печатиКруглая печать ООО или ИП и прямоугольный штамп: текст по дуге, ИНН и ОГРН в кольце, эмблема, цвет мастики, диаметр в мм, зернистость оттиска. PNG 300 dpi на прозрачном фоне, SVG и PDF в натуральную величину.
ОткрытьТабличка на дверьКабинет с номером, должностью и ФИО, класс с учителем, надписи «Не беспокоить», «Закрыто», «Совещание», организация с этажом и часами. Четыре оформления, эмодзи, A4, A5, полоса 300×100, двусторонняя. PDF и PNG 300 dpi.
ОткрытьКомпас онлайнСтороны света и азимут по датчику телефона, роза ветров с 16 румбами, направление и расстояние до Мекки или любых координат, заморозка показаний.
ОткрытьЕщё инструменты для кода и данных
Base64 и URL, форматтер и сравнение JSON, хеши, регулярные выражения, cron, подсети, UUID, QR-код и Unix-время — в разделе 42 инструмента.