Объяснение выражений Cron Составление расписаний без потери рассудка
Практическое руководство по синтаксису cron: пять полей, специальные символы, 10 готовых выражений и генератор cron-выражений для создания и проверки расписаний без догадок.
Расписания Cron выполняют задачи на системах Unix. Синтаксис — пять полей, разделённых пробелами — кажется простым, пока вы не хотите запустить что-то каждые 15 минут в рабочие дни и не можете вспомнить, является ли это полем два или три. Это справочник, который вы всегда открываете.
Формат из пяти полей
Каждое выражение Cron содержит ровно пять полей, разделённых пробелами, в следующем порядке:
┌─────────────── minute (0–59)
│ ┌─────────────── hour (0–23)
│ │ ┌─────────────── day of month (1–31)
│ │ │ ┌─────────────── month (1–12)
│ │ │ │ ┌─────────────── day of week (0–7, 0 and 7 = Sunday)
│ │ │ │ │
* * * * *
Справочник по полям
| Поле | Разрешённые значения | Любое значение — соответствует каждой единице | Пример |
|---|---|---|---|
| означает 30-ю минуту. | 0–59 | * , – / | */15 = каждые 15 минут |
| означает 9 утра. | 0–23 | * , – / | 9-17 = с 9 утра до 5 часов |
| День месяца | 1–31 | * , – / ? | 1 = первый день месяца |
| , декабрь — | 1–12 | * , – / | */3 = каждый квартал |
| День недели | 0–7 (0=воскресенье) | * , – / ? | 1-5 = понедельник–пятница |
Любое значение — соответствует каждой единице
- * — звёздочка, соответствует любому значению в этом поле
- , — разделитель списка:
1,3,5в день недели означает понедельник, среду, пятницу - – — диапазон:
9-17в поле часа означает с 9 утра до 5 часов - / — шаг:
*/15в поле минут означает каждые 15 минут;2/3означает каждый третий элемент, начиная с 2 - ? — отсутствие конкретного значения (день месяца или день недели, используется только в Quartz/Spring scheduler)
Общие выражения Cron
| Каждый день в 9:00 утра | Описание |
|---|---|
* * * * * | Каждую минуту |
*/5 * * * * | Каждые 5 минут |
*/15 * * * * | Каждые 15 минут |
0 * * * * | Понедельник по пятницу в 9:00 утра |
0 0 * * * | Каждый день в полночь |
0 9 * * 1-5 | 9 утра каждый рабочий день |
0 9-17 * * 1-5 | Каждый час с 9 утра до 5 часов, только в рабочие дни |
0 0 * * 0 | 1-е и 15-е число месяца в 4:30 утра |
0 0 1 * * | Полночь первого числа каждого месяца |
0 0 1 1 * | Полночь 1 января |
Три реальных примера
1. Резервное копирование базы данных в полночь
0 0 * * *
означает 30-ю минуту. 0, час 0, каждый день. Запускается один раз в 00:00 — чисто, предсказуемо и не мешает в часы пик.
2. Синхронизация API каждые 15 минут
*/15 * * * *
*/15 в поле минут означает «шаг на 15, начиная с 0» — запускается в :00, :15, :30 и :45 каждого часа. Все остальные поля *, поэтому работает круглосуточно.
3. Еженедельная очистка — 6 утра понедельник
0 6 * * 1
означает 30-ю минуту. 0, час 6, любой день месяца, любой месяц, день недели 1 (понедельник). Запускается один раз в неделю. Измените 1 к 5 если пятница лучше подходит для вашей команды.
Создание и проверка расписания
Запоминание всех комбинаций не является целью — важно знать, где искать. Используйте Генератор выражений Cron для визуального настройки полей и наблюдайте, как формируется выражение. После того, как вы получите кандидатское выражение, вставьте его в для проверки того, что запускается вовремя. для подтверждения того, что оно запускается в точные дни и время, которые вы ожидаете, перед тем как внедрить.
Пять полей, четыре специальных символа, два инструмента для проверки работы — это всё, что нужно для надёжного планирования.
Вам также может понравиться
Установите наши расширения
Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска
恵 Табло результатов прибыло!
Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!
Подписаться на новости
все Новые поступления
всеОбновлять: Наш последний инструмент было добавлено 22 апр 2026
