Розбір cron-виразів

Онлайн-парсер cron-виразів, що працює у вашому браузері. Вставте 5-польовий рядок crontab (або 6-польовий із секундами, або псевдонім @yearly / @monthly / @weekly / @daily / @hourly) — інструмент пояснить його зрозумілою мовою, покаже наступні 10 часів запуску у вашому часовому поясі (з перемиканням на UTC) та розбере кожне поле. Складні вирази на кшталт "*/15 9-17 * * MON-FRI" розшифровуються так само, як і звичайний "0 9 * * *". Зручно перевіряти crontab перед тим, як розгортати його на сервері.

Як користуватися

1
Вставте вираз

Будь-який 5- або 6-польовий рядок crontab чи псевдонім @alias.

2
Прочитайте опис

Пояснення зрозумілою мовою — коли саме запускається завдання.

3
Перегляньте наступні запуски

Десять найближчих часів запуску, за замовчуванням — у вашому місцевому часі.

4
Перемкніть на UTC

Перевірте відповідність тому, що очікує серверний cron.

Читайте будь-який cron-вираз — опис зрозумілою мовою, десять найближчих запусків і розбивка по полях

Варіант:

Опис

Поля

Наступні 10 запусків (ваш місцевий час)

Довідка по полях

* * * * * = Хвилина (0-59) · Година (0-23) · День місяця (1-31) · Місяць (1-12 (або JAN-DEC)) · День тижня (0-6 (Sunday=0, також SUN-SAT))
Спецсимволи: * (будь-яке) , (список) - (діапазон) / (крок)
Не знаєте, що спробувати?
700+ інструментів — відкрийте сюрприз
🎲 Здивуйте мене

Можливості

Парсинг 5- і 6-польових виразів
Класичний crontab (хвилина/година/день місяця/місяць/день тижня) та додаткове поле секунд (сумісне з Quartz).
Спеціальні псевдоніми
@yearly, @annually, @monthly, @weekly, @daily, @midnight, @hourly — усі розпізнаються.
Повний синтаксис cron
*, списки через кому (1,5,15), діапазони (1-15), кроки (*/5 або 10-20/2), назви JAN-DEC і SUN-SAT.
Наступні 10 запусків
Перегляньте десять найближчих часів запуску у своєму часовому поясі з перемиканням на UTC для перевірки серверного розкладу.
Розбивка по полях
Кожне поле показується зрозумілою мовою поруч із вихідним значенням.
Готові шаблони
Поширені варіанти в один клік — щохвилини, будні 9-17, перше число місяця тощо.

Типові сценарії

  • Перевірте складний розклад на кшталт "*/15 0-6 * * MON-FRI" перед тим, як вставити його на робочий сервер.
  • Знайдіть наступні 10 часів запуску, щоб спланувати вікно деплою навколо запланованого завдання.
  • Розшифруйте cron-вираз, залишений у репозиторії без жодного коментаря.
  • Конвертуйте між серверним часом і вашим місцевим для чергового розкладу.
  • Побудуйте вираз Quartz (із секундами) і перевірте його перед відправкою у Java-застосунок.

Чому саме цей інструмент

Більшість cron-інструментів або пояснюють вираз, або показують наступні запуски — але не те й інше одночасно. Тут є обидва режими плюс розбивка по полях, яка допомагає знайти поле, де закралася помилка. Обчислення виконуються у браузері. Підтримуються класичний 5-польовий crontab і 6-польовий стиль Quartz із секундами.

Поширені запитання

У чому різниця між 5-польовим і 6-польовим cron?

Традиційний Unix cron використовує 5 полів: хвилина, година, день місяця, місяць, день тижня. Quartz (Java-планувальники, Spring Boot тощо) додає на початку поле «секунда», утворюючи 6 полів. Інструмент визначає варіант автоматично: 5 токенів → класичний, 6 токенів → Quartz.

У якому часовому поясі показується розклад?

Cron-вирази самі по собі не містять інформації про часовий пояс — сервер інтерпретує їх у своєму місцевому поясі. Інструмент за замовчуванням показує наступні запуски у часовому поясі вашого браузера та пропонує перемикач на UTC. Якщо сервер працює в іншому поясі, часи відрізнятимуться — перевірте рядок TZ= у crontab або змінну середовища TZ контейнера.

Чому "*/5" означає "кожні 5"?

Символ кроку "/" разом із "*" означає «починати з мінімального значення поля і збільшувати на N». Тому */5 у полі хвилин дає 0, 5, 10, 15, … 55. Можна також написати 10/5 (починати з 10 з кроком 5: 10, 15, 20, …).

А як щодо модифікаторів "L" / "W" / "#" (останній будній тощо)?

Це розширення Quartz (Spring Scheduler, Hangfire тощо), яких немає у стандарті POSIX cron. Поточна версія інструменту їх не підтримує. Якщо ваш планувальник використовує їх, перевіряйте у власному інтерфейсі планувальника.

Чому день місяця і день тижня поєднуються через «АБО»?

Це особливість POSIX cron: якщо ОБИДВА поля — день місяця і день тижня — обмежені (тобто не "*"), завдання запускається, коли виконується БУДЬ-ЯКЕ з них. Тобто "0 0 1 * MON" спрацює і першого числа кожного місяця, і щопонеділка — багато хто читає це інакше.

Чи працює на мобільних?

Так. Поле введення відображається моноширинним шрифтом; список розкладу прокручується.

💡 Хочете, щоб ми покращили цей інструмент спеціально для вас?

Звичайно! Просто надішліть нам коротке повідомлення з вашою ідеєю. Якщо хочете обговорити детальніше — залиште email, і ми зв’яжемося з вами. Можна залишитися анонімом.

Як ви оцінюєте цей інструмент?

Дякуємо за вашу оцінку!
Хочете розповісти більше? Залиште коментар!
Дякуємо! Ваш коментар з’явиться після модерації.
Опубліковано Оновлено Автор: