Расшифровка и генератор cron-выражений
Введите или вставьте расписание crontab, чтобы простыми словами увидеть, когда оно срабатывает, и точное время ближайших запусков. Или соберите его по полям из готового шаблона. Подходит для cron в Linux, CronJob в Kubernetes, GitHub Actions и большинства планировщиков.
Бесплатно · Без регистрации
Как пользоваться
- Введите или вставьте cron-выражение в поле или нажмите на одно из частых расписаний.
- Прочитайте расписание простыми словами под полем. Ошибки объясняются сразу, по каждому полю.
- Проверьте 10 ближайших запусков. Они показаны в вашем часовом поясе; отметьте «Показывать время в UTC», чтобы сравнить с сервером, работающим по UTC.
- Настройте отдельные поля в ячейках под выражением. Выражение обновляется по мере ввода.
- Скопируйте выражение в crontab или скопируйте ссылку, чтобы поделиться расписанием с командой.
Почему стоит использовать этот инструмент
Объяснение простыми словами
Каждое выражение превращается в понятную фразу, например: В 09:30, дни недели: понедельник–пятница.
10 ближайших запусков
Точно видно, когда задача запустится, по местному времени или UTC, и сколько осталось до каждого запуска.
Конструктор по полям
Минута, час, день, месяц и день недели редактируются в отдельных ячейках, рядом показаны допустимые значения.
Понятные ошибки
Значения вне диапазона, обратные диапазоны, неверное число полей и синтаксис Quartz указываются для каждого поля.
Секунды и сокращения
Поддерживаются выражения из 6 полей с секундами, имена MON-FRI и JAN, а также сокращения @daily и @reboot.
Ссылки для обмена
Скопируйте ссылку, которая открывает страницу с вашим выражением, — удобно для код-ревью и задач в трекере.
Синтаксис cron коротко
Стандартное cron-выражение состоит из пяти полей через пробел. Задача запускается, когда текущее время совпадает со всеми полями. Звёздочка * означает любое значение.
| Поле | Допустимые значения | Пример | Значение |
|---|---|---|---|
| Минута | 0–59 | 30 | В 30 минут |
| Час | 0–23 | 9 | В 9 утра |
| День месяца | 1–31 | 1 | 1-го числа |
| Месяц | 1–12 или JAN–DEC | * | Каждый месяц |
| День недели | 0–7 или SUN–SAT | 1-5 | С понедельника по пятницу |
Специальные символы
| Символ | Значение | Пример |
|---|---|---|
| * | Любое значение | * в поле часа: каждый час |
| , | Список значений | 0,30: в 0 и 30 минут |
| - | Диапазон значений | 1-5: с понедельника по пятницу |
| / | Шаг | */15: каждые 15 минут |
| @daily | Сокращение | То же, что 0 0 * * * |
Частые примеры cron
| Выражение | Когда срабатывает |
|---|---|
| */5 * * * * | Каждые 5 минут |
| 0 * * * * | В начале каждого часа |
| 0 0 * * * | Каждый день в полночь |
| 30 2 * * 0 | Каждое воскресенье в 02:30 |
| 0 9 * * 1-5 | По будням в 09:00 |
| 0 0 1 * * | В полночь первого числа каждого месяца |
| 0 */6 * * * | Каждые 6 часов: в 00:00, 06:00, 12:00 и 18:00 |
| 15 3 * * 1 | Каждый понедельник в 03:15 |
Типичные ошибки
- Часовой пояс: cron работает по времени сервера, часто это UTC. CronJob в Kubernetes и GitHub Actions используют UTC, если пояс не задан. Для Москвы разница с UTC — 3 часа.
- День месяца и день недели вместе: 0 0 1 * 1 сработает 1-го числа каждого месяца и в каждый понедельник, а не только в понедельник, выпавший на 1-е.
- */7 в поле минут начинается заново каждый час: запуски в 0, 7, … 56 минут, а затем снова в 0 — всего через 4 минуты.
- Переход на летнее время: в странах, где он есть, задачи между 02:00 и 03:00 в ночь перевода часов могут пропуститься или выполниться дважды.
- Символ % в строках crontab имеет особое значение, в командах его нужно писать как \%.
Частые вопросы
Что такое cron-выражение?
Это короткое расписание из пяти полей: минута, час, день месяца, месяц и день недели. Cron в Linux и macOS и многие планировщики, например CronJob в Kubernetes и GitHub Actions, используют его, чтобы решить, когда запускать задачу.
Это то же самое, что crontab.guru?
Нет. Это независимый бесплатный инструмент с похожей задачей. Он также показывает ближайшие запуски в вашем часовом поясе или UTC, поддерживает секунды и имеет конструктор по полям на шести языках.
Как запускать cron-задачу каждые 5 минут?
Используйте */5 * * * *. */5 в поле минут означает каждую пятую минуту, начиная с нулевой.
Как запускать задачу только по будням?
Укажите 1-5 в поле дня недели, например 0 9 * * 1-5 — в 09:00 с понедельника по пятницу. Можно также написать MON-FRI.
Воскресенье — это 0 или 7?
И то и другое. В стандартном cron 0 и 7 означают воскресенье, 1 — понедельник. В других системах, например в Quartz, счёт иной: там 1 — воскресенье.
Как запускать задачу в последний день месяца?
В стандартном cron для этого нет символа. L в некоторых инструментах — расширение Quartz. Обычно пишут 0 0 28-31 * * и добавляют проверку в команду, например [ "$(date -d tomorrow +\%d)" = "01" ] && ваша-команда.
В каком часовом поясе показаны запуски?
По умолчанию — в часовом поясе вашего устройства. Отметьте «Показывать время в UTC», чтобы увидеть время по UTC, которое используют большинство серверов, контейнеров и облачных планировщиков.
Поддерживаются ли секунды?
Да. Включите поле секунд или введите 6 полей — первое будет считаться секундами, как в Quartz и Spring. Стандартный cron в Linux секунды не поддерживает.
Cron-задачи: синтаксис crontab с примерами
Похожие инструменты
Нужно что-то создать?
Расскажите, что вы хотите построить.
Расскажите, что вам нужно создать: от простого сайта до полноценного приложения, AI-решения, автоматизации или индивидуальной системы.