Що таке Парсер Cron-виразів?
Cron — це стандартний синтаксис планування, який використовується в cron-завданнях Unix/Linux, конвеєрах CI/CD, Kubernetes CronJobs та безлічі інших планувальників завдань. Вираз cron упаковує весь розклад повторюваних завдань у п'ять компактних полів, що є потужним інструментом, але, як відомо, його важко прочитати з першого погляду — чи «0 */4 * * 1-5» означає кожні 4 години в будні, чи щось зовсім інше?
Цей парсер розбирає вираз cron поле за полем і перекладає його у зрозуміле речення, щоб ви могли перевірити правильність розкладу перед його застосуванням або швидко зрозуміти розклад, написаний кимось іншим, без звернення до таблиці синтаксису cron.
Коли використовувати цей калькулятор
- При перевірці cron-розкладу перед розгортанням запланованого завдання чи конвеєра CI/CD
- При налагодженні причини, чому заплановане завдання запустилося (або не запустилося) в неочікуваний час
- При перевірці Kubernetes CronJob або розкладу GitHub Actions, написаного колегою
- При вивченні синтаксису cron для курсу з системного адміністрування чи DevOps
- При аудиті наявних записів crontab під час міграції сервера
- При проєктуванні складного шаблону планування, що поєднує кілька часових обмежень
Кроки:
- Вставте або введіть 5-польовий cron-вираз у поле введення.
- Перегляньте кожне поле окремо з його значенням.
- Прочитайте переклад усього розкладу простою мовою.
- Спробуйте кнопку готового шаблону для поширених розкладів, як-от «щогодини» чи «у будні о 9:00».
Формула
┌───────────── хвилина (0-59)
│ ┌───────────── година (0-23)
│ │ ┌───────────── день місяця (1-31)
│ │ │ ┌───────────── місяць (1-12)
│ │ │ │ ┌───────────── день тижня (0-6, неділя=0)
│ │ │ │ │
* * * * *
Випадки використання
- Перевірка cron-розкладу перед розгортанням запланованого завдання чи конвеєра CI/CD
- Розуміння Kubernetes CronJob або запланованої serverless-функції, написаної колегою
- Налагодження причини, чому заплановане завдання запустилося (або не запустилося) в неочікуваний час
- Вивчення синтаксису cron для курсу з системного адміністрування чи DevOps
- Аудит наявних записів crontab під час міграції сервера
Ключові переваги
- Миттєвий переклад незрозумілого синтаксису cron на просту мову
- Розбір кожного з 5 полів окремо для ясності
- Готові шаблони в один клік для найпоширеніших схем планування
- Без реєстрації, повністю працює у вашому браузері
Поради
- Якщо сумніваєтеся, спершу протестуйте на найближчому часі в майбутньому, щоб переконатися, що розклад спрацьовує як очікується
- Використовуйте діапазони (1-5) замість переліку кожного значення через кому, коли це можливо, для кращої читабельності
- Двічі перевірте налаштування часового поясу сервера чи планувальника — це найпоширеніше джерело помилок «неправильного часу» в cron
- Для чогось складнішого за просту щоденну чи щотижневу схему опишіть розклад простою мовою та порівняйте його зі своїм наміром перед розгортанням
Поширені помилки
- Забувати, що день місяця та день тижня поєднуються через АБО, а не через І
- Плутати нумерацію дня тижня з 0 (0=неділя) з нумерацією з 1, прийнятою в інших системах
- Вважати, що */7 у полі дня місяця означає «кожні 7 днів» — насправді це дні 1, 8, 15, 22, 29 з перезапуском щомісяця
- Забувати, що більшість реалізацій cron працюють за місцевим часом сервера, а не за UTC чи часом користувача
Ключові терміни
- Cron: планувальник завдань за часом, що використовується в Unix-подібних операційних системах
- Crontab: файл або команда, що використовується для визначення списку cron-завдань
- Крокове значення (Step value): синтаксис «/N», що означає «кожні N одиниць», починаючи з мінімуму поля
- CronJob: нативний ресурс Kubernetes для запуску завдань за розкладом cron
Пов'язані концепції
- Калькулятор різниці в часі: Обчисліть тривалість між двома датами та часами
- Калькулятор днів до: Порахуйте дні до визначеної дати
- Конвертер часових міток Unix: Конвертуйте між часовими мітками Unix та датами
- Калькулятор перетину часових поясів: Знайдіть перетин робочих годин між часовими поясами
- Форматувальник JSON: Форматуйте та перевіряйте дані JSON
Приклад
Вираз "0 9 * * 1-5" розкладається так: хвилина=0, година=9, кожен день місяця, кожен місяць, з понеділка по п'ятницю — тобто «о 09:00, з понеділка по п'ятницю».
Інтерпретація результатів
Парсер розбирає 5-польовий cron-вираз на окремі компоненти та перекладає кожен простою мовою. П'ять полів: хвилина (0-59), година (0-23), день місяця (1-31), місяць (1-12) та день тижня (0-6, де 0 — неділя). Завдання запускається, коли всі п'ять полів збігаються з поточним часом — це логіка І між полями.
Особливу увагу зверніть на взаємодію між днем місяця та днем тижня, яка використовує логіку АБО (а не І). Завдання, заплановане на 15-те число й п'ятницю, виконуватиметься 15-го числа кожного місяця й кожної п'ятниці — а не лише в п'ятниці, які припадають на 15-те число.

