Составьте расписание с помощью элементов управления или введите cron-выражение, чтобы увидеть его объяснение на понятном русском языке.

Поля

Следующие запуски

Ваш часовой пояс

    Как работают cron-выражения

    Cron-выражение описывает повторяющееся расписание с помощью пяти полей, разделённых пробелами. Каждую минуту cron сравнивает текущее время с выражением и запускает задачу, если они совпадают.

    Пять полей

    ПолеДопустимые значения
    Минута0–59
    Час0–23
    День месяца1–31
    Месяц1–12 или JAN–DEC
    День недели0–7 или SUN–SAT (0 и 7 — это воскресенье)

    Специальные символы

    • * (любое значение): * * * * * запускается каждую минуту.
    • , (список): 0 9,17 * * * запускается в 9:00 и в 17:00.
    • - (диапазон): 0 9 * * 1-5 запускается в 9:00 с понедельника по пятницу.
    • / (шаг): */15 * * * * запускается каждые 15 минут. Шаг работает и с диапазоном: 0-30/10 означает минуты 0, 10, 20 и 30.

    День месяца или день недели?

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

    Если одно из этих полей начинается с *, как в */2, день должен подходить под оба. Cron Builder следует тем же правилам, что Vixie cron и cronie — реализации cron, которые используются в большинстве дистрибутивов Linux.

    Типичные примеры

    ВыражениеЗначение
    */5 * * * *Каждые 5 минут
    0 * * * *Каждый час, в начале часа
    0 0 * * *Каждый день в полночь
    0 9 * * 1-5По будням в 9:00
    0 0 * * 0Каждое воскресенье в полночь
    0 0 1 * *1-го числа каждого месяца в полночь
    0 0 1 1 *Раз в год, 1 января в полночь

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

    Что такое cron-выражение?

    Короткая строка из пяти полей, которая задаёт повторяющееся расписание. Её используют cron в Linux и macOS, а также такие инструменты, как Kubernetes CronJobs, GitHub Actions и запланированные пайплайны GitLab.

    В каком часовом поясе показаны следующие запуски?

    В часовом поясе вашего браузера. Cron на сервере использует часовой пояс сервера, часто UTC, поэтому фактическое время может отличаться.

    Почему */45 запускается в :00 и :45, а не каждые 45 минут?

    Шаг отсчитывается от начала поля, а не от предыдущего запуска. В поле минут */45 означает минуты 0 и 45, поэтому интервалы чередуются: 45 и 15 минут. Чтобы интервал был равномерным, выберите шаг, на который 60 делится без остатка (например, 5, 10, 15, 20 или 30), а для часов — 24.

    Можно ли использовать названия вместо чисел?

    Да. Для месяцев (JAN–DEC) и дней недели (SUN–SAT) работают трёхбуквенные английские сокращения. Регистр не важен, и они работают в списках и диапазонах, например MON-FRI.

    Поддерживает ли Cron Builder секунды или годы?

    Нет, используется стандартный формат из пяти полей. Некоторые планировщики, например Quartz или Spring, добавляют поле секунд (а иногда и года), поэтому их выражения здесь не сработают.

    А как насчёт @daily, @reboot или L?

    Сокращения вроде @hourly и @daily не поддерживаются. Используйте вместо них эквивалентное выражение: @daily — это 0 0 * * *. @reboot запускается при старте системы и не имеет эквивалента по времени. Расширения L, W, # и ?, которые используют Quartz и некоторые облачные планировщики, тоже не поддерживаются.

    Cron Builder бесплатный?

    Да, он бесплатный и не требует регистрации. Всё работает в вашем браузере, а введённые выражения никуда не отправляются.