Конструктор cron-выражений — бесплатно
Создавайте, проверяйте и объясняйте cron-выражения для запланированных задач. Описание на понятном языке, предпросмотр следующих 5 запусков и пресеты распространённых шаблонов.
(0-59)час
(0-23)день
(1-31)месяц
(1-12)день недели
(0-7)
Простым языком
В 09:00, С понедельника по пятницу.
Типовые шаблоны
Совместим со стандартным Unix cron, GitHub Actions, Kubernetes CronJob и большинством систем планирования. Используйте * для «каждый», */5 для «каждые 5», 1-5 для диапазонов, 1,15 для конкретных значений. Также поддерживает @hourly, @daily, @weekly, @monthly, @yearly и имена вроде MON-FRI или JAN-DEC.
Частые применения
- Создание Cron для рабочих процессов GitHub ActionsGitHub Actions использует синтаксис cron для запланированных рабочих процессов. Создайте и проверьте свое расписание здесь.
- Создание Cron для Kubernetes CronJobsРесурсы Kubernetes CronJob используют стандартный синтаксис cron. Создавайте и визуально объясняйте выражение.
- Создание записей Cron для Linux crontabСоздавайте выражения для традиционного Unix cron (cron, crontab -e) с уверенностью.
- Планирование задач обслуживания базы данныхПланируйте резервное копирование, вакуум или задачи анализа с уверенностью, используя выражения cron.
- Узнайте, как работают выражения CronКаждая корректировка показывает мгновенное объяснение на простом английском языке и предпросмотр следующих 5 прогонов — лучший способ изучить cron.
Как это работает
Конструктор выражений cron полностью работает в вашем браузере с использованием написанного вручную парсера в lib/cron.ts — без внешней библиотеки, без обращения к серверу. Он проверяет выражение, собирает описание простым языком с использованием встроенных API Intl.DateTimeFormat и Intl.ListFormat браузера для названий дней и месяцев с учётом локали и вычисляет следующие запланированные времена запуска, продвигаясь вперёд по времени с пропуском полей, а не перебором каждой минуты.
- 1Выражение разбирается поле за полемПарсер разбивает выражение на пять (или шесть) разделённых пробелами полей и токенизирует каждое на запятые, диапазоны (например, 1-5), обозначение шага (например, */15) и именованные значения, такие как MON или JAN. @макросы, такие как @daily, разворачиваются в их пятиполевые эквиваленты перед началом парсинга. Недопустимые значения или числа вне диапазона появляются как типизированные ключи ошибок, сопоставляемые с локализованными сообщениями.
- 2Собрано человекочитаемое описаниеdescribeCron() в lib/cron.ts строит английское (или локализованное) предложение, изучая, какие поля являются подстановочными знаками, а какие — явными наборами. Названия дней и месяцев разрешаются через Intl.DateTimeFormat с активной локалью, а элементы списка объединяются с помощью Intl.ListFormat, так что союз («и» против «,» против формы, специфичной для локали) соответствует языку пользователя.
- 3Следующие времена запуска вычисляются с пропуском полейnextRuns() продвигает объект Date вперёд от текущего момента, но пропускает целые месяцы, дни или часы, которые не могут совпасть, вместо тестирования каждой минуты. Это означает, что невозможное расписание вроде 30 февраля быстро завершается через проверку пятилетнего горизонта, а не циклом 2,6 миллиона раз.
- 4Выражение передаётся через фрагмент URLЛюбое введённое вами выражение записывается в фрагмент URL страницы как #expr= (с задержкой 500 мс через window.history.replaceState). Фрагмент никогда не отправляется на сервер; страница гидратируется из него при загрузке, так что обмен или добавление URL в закладки восстанавливает точное выражение без какого-либо состояния сервера.
Похожие инструменты
Расшифровщик cron-выражений
Переводите любое cron-выражение на понятный язык и смотрите ближайшее время запуска. Поддерживает диапазоны, списки, шаги, имена и @-макросы. Работает в браузере.
Калькулятор EMI
Рассчитайте ежемесячный EMI кредита по методу уменьшающегося остатка с полным графиком амортизации, разбивкой основной суммы и процентов и экономией от досрочного погашения, форматированной в индийских рупиях.
Калькулятор личного кредита
Ежемесячный платёж, общие проценты, дата погашения и полная таблица амортизации для любого кредита с фиксированной ставкой — с дополнительными платежами.