Справочник

Справочник по циферблату

Словарь, легенда, три правила перевода часов и пределы расчёта. Всё, что здесь описано, делает рабочий пример — и ничего сверх этого.

Словарь

Выражение
Пять полей через пробел — минута, час, день месяца, месяц, день недели — или макрос вроде @daily. Проверяется классический cron по crontab(5).
Поле
Одна из пяти частей выражения. Под полем ввода каждое поле показано отдельным картушем с нормализованным множеством значений.
Шаг
/n после * или диапазона: */15 — 0, 15, 30, 45; 10-50/20 — 10, 30, 50. Отсчитывается от начала диапазона.
Диапазон
a-b включительно, начало не больше конца. Имена месяцев и дней недели тоже можно ставить в диапазон: mon-fri.
Фиксированное время / по маске
Класс задания по Debian cron(8): «по маске», если поле минут или часов начинается с * или выражение — @hourly; иначе — «фиксированное время». От класса зависит правило «С догоном».
IANA-пояс
Имя из базы часовых поясов, например Europe/Berlin. Несёт смещение и правила переводов; принимается любое имя, которое знает ваш браузер.
Смещение
Разница местного времени с UTC в конкретный момент: в Берлине +02:00 летом и +01:00 зимой.
Окно
Промежуток, в котором ищутся запуски: от начала в «поясе окна» до местной полуночи через 1, 7, 14, 21 или 28 календарных дней. Запуск входит, если его момент в UTC попадает в окно.
Разрыв
Местное время, которого нет: весной часы перескакивают, например с 02:00 на 03:00.
Повтор
Местное время, которое проходит дважды: осенью часы возвращаются, например с 03:00 на 02:00.
Правило перевода
Что планировщик делает с запуском в разрыве или повторе. CronLens показывает три: «С догоном», «Пропуск и один раз», «Буквально».
Пересечение
Два задания работают одновременно: интервалы [старт; старт + длительность) в UTC накладываются друг на друга.
Дольше интервала
Следующий запуск того же задания начинается раньше, чем закончится текущий. Отметка ⟲.
Горизонт
Если в окне запусков нет, CronLens ищет следующий на пять лет от начала окна и прямо пишет, если его нет.
Отпечаток
SHA-256 канонического JSON с входными данными и результатом. Как пересчитать — в синтаксисе и форматах.

Легенда циферблата

Циферблат — 24-часовые солнечные часы: полдень ☉ вверху, полночь внизу, ход по часовой стрелке. Показывает один день в «поясе циферблата». Смысл никогда не передаётся одним цветом: у кольца есть буква, у метки — символ и слово.

Метки циферблата
знакметкачто значит
А Б В ГКольцо заданияСнаружи внутрь: радиусы 150, 128, 106 и 84 в координатах циферблата.
│Риска запускаРадиальная черта в минуту запуска по местным часам циферблата.
◠Дуга длительностиСколько задание работает; хвост после 24:00 обрывается шевроном «→ завтра».
▨РазрывСектор, заштрихованный через все кольца, с подписью «02:00–02:59 нет».
↺ПовторВнешний двойной виток за безелем с подписью «02:00–02:59 дважды». Сплошная риска на витке выполняется, контурная — нет.
✕ПересечениеРадиальная скобка между дугами двух заданий.
↷ДогонПунктирная стрелка от несуществующего времени к первой минуте после разрыва.
⊘Потерян в разрывеКружок с чертой на месте несуществующего времени; в ведомости — пунктирная строка без номера.
▦Плотный режимБольше 240 запусков в сутки на кольце: вместо рисок 24 часовых сектора с заливкой по числу запусков и подписью «N/ч».
┄Сравнить с UTCПунктирное призрачное кольцо: то же выражение выбранного задания, прочитанное в UTC.
1, 2Номера замечанийМелкие цифры у рисок и в строках ведомости повторяют номера ①②③ из списка замечаний.

Три правила

Правило выбирается в полосе расчёта; на дне перевода «Разбор минуты» показывает все три рядом. Какое правило действует у вас, решает ваш планировщик.

Поведение трёх правил
правилоразрывповторкаким заданиямисточник
С догономфиксированное время — ↷ в первую минуту после разрыва; по маске — ⊘ потерянфиксированное время — один раз, первым прохождением; по маске — дважды, по новым часамразличает классыcron(8), Debian
Пропуск и один раз⊘ потерянодин раз, первым прохождениемвсем одинаковоEventBridge Scheduler
Буквально⊘ потерян — несуществующее время не совпадает никогдадважды: ↺¹ и ↺²всем одинаковоcrontab(5)

Несколько совпадений из одного разрыва при «С догоном» выполняются в одну и ту же минуту — в ведомости это несколько строк с одним временем.

Классы заданий по Debian cron(8)

Debian cron(8) особо обрабатывает переводы часов меньше чем на три часа, но только для заданий, которые идут в определённое время: не заданных как @hourly и без * в поле часов или минут. Остальные задания идут по новым часам.

CronLens показывает класс на карточке задания: 30 2 * * * — «фиксированное время», */15 1-3 * * * и @hourly — «по маске». Признак — поле минут или часов начинается с *.

Оговорка: cronie cron(8) формулирует класс иначе — «в определённое время или с шагом больше часа». CronLens следует явному правилу Debian, чтобы класс можно было проверить по самому выражению.

Правило ИЛИ

Если ограничены оба поля дня — и день месяца, и день недели, — задание срабатывает в день, когда совпало любое из них. 0 12 1 * 1 с 28.09.2026 даёт 28.09 (пн), 01.10 (чт) и 05.10 (пн).

Поле ограничено, если не начинается со звёздочки. В 0 12 */2 * 1 день месяца начинается с *, поэтому оба условия проверяются вместе — нечётное число и понедельник. «Разбор минуты» пишет, какое из двух полей совпало.

Пределы

Пределы расчёта
Заданиядо 4 — по кольцу на каждое
Длительностьот 1 до 1440 минут
Окно1, 7, 14, 21 или 28 дней
Запуски2000 на задание в окне; выше — «показаны первые 2000»
Плотный режимбольше 240 запусков в сутки на кольце
Горизонт поиска5 лет от начала окна
Файл .icsдо 1000 событий; остальное — в JSON
Выражениедо 120 символов
Доп. поясадо 2 в ведомости
Строки ведомостипо 100, кнопка «Показать ещё 100»

Откуда данные о поясах

Смещения и переводы берутся из базы IANA, встроенной в ваш браузер, через стандартный Intl.DateTimeFormat. Если правила пояса недавно изменились, а браузер не обновлён, расчёт может разойтись с настоящими часами. Проверить можно в двух браузерах: разные отпечатки при одинаковых данных — повод заподозрить базу.

Переход ищется шагом 15 минут и уточняется до минуты. Длина суток — разность моментов соседних местных полуночей: например, 1380, 1440 или 1500 минут, а на Лорд-Хау — 1410 и 1470.

Сдвиги больше трёх часов — например, когда территория переходит на другую сторону линии перемены дат, — показываются как разрыв или повтор. «Догон» к ним не применяется, как и в cron(8).