Реклама

Генератор выражений Cron

Создавайте, объясняйте и проверяйте расписания cron визуально. Выберите пресеты или настройте каждое поле — мгновенно увидите удобочитаемое значение и время следующего выполнения.

Реклама
При следующем запуске используйте ваш местный часовой пояс:

Человекочитаемый объяснение

🕒

Следующие 5 раз выполнения

Общие пресеты

Нажмите на пресет, чтобы загрузить его мгновенно.

Что такое выражение Cron?

А выражение cron — это компактная строка, используемая cron работа планировщик — встроен в Unix, Linux и macOS — для описания когда команда должен бежать. Вместо написания кода, который спит и проверяет часы, вы описываете повторяющиеся действия. запланируйте несколько символов и позвольте операционной системе запустить ваш сценарий точно в нужное время. нужный момент.

Классический формат состоит из пяти полей, разделенных пробелами: minute hour day-of-month month day-of-week. При чтении слева направо каждое поле сужается. когда работа бежит. Одна звездочка (*) в поле означает «все возможные значения», так * * * * * бежит каждую минуту каждого дня. Современные планировщики, такие как Quartz, Spring и AWS EventBridge добавляют необязательный ведущий секунды поле (и иногда завершающий год поле); этот генератор поддерживает как 5-поле, так и 6-полевые вкусы.

Пять полей с первого взгляда

Field Allowed values Special characters
Minute 0–59 * , - /
Hour 0–23 * , - /
Day of month 1–31 * , - / ? L
Month 1–12 or JAN–DEC * , - /
Day of week 0–6 or SUN–SAT * , - / ? L

Объяснение специальных символов

  • *каждое значение. Звездочка означает «все». В поле часа это означает каждый час.
  • ,список ценностей. 1,15,30 означает минуты 1, 15 и 30.
  • -диапазон значений. 9-17 значит от 9 до 17 включительно.
  • /значения шага. */15 означает каждые 15 единиц; 0-30/10 означает 0, 10, 20, 30.
  • ?нет конкретного значения (используется, чтобы избежать противоречивых дней поля, распространенные в кварце).
  • Lпоследний. L в поле дня месяца означает последний день месяца.

Как использовать этот генератор Cron

Этот инструмент превращает загадочный синтаксис cron во что-то, что вы можете увидеть и понять. Есть три способа его использования:

  1. Начните с предустановки. Нажмите на одно из общих расписаний — «Каждый минуту», «Каждый день в полночь», «Каждый понедельник в 9 утра» и еще — и поля заполнятся автоматически.
  2. Стройте визуально. Каждое поле имеет кнопки быстрого режима («Каждый», «В», «Между», «Каждый»). шаг). Введите значение, например 30, диапазон вроде 9-17или шаг типа */10. Выражение и объяснение обновляются в реальном времени.
  3. Разобрать существующее выражение. Вставьте строку cron из файла конфигурации или файла учебник в поле «Разбор», чтобы увидеть, что это означает и когда оно сработает в следующий раз.

При редактировании генератор показывает краткое изложение расписания на простом английском языке (например, «В 09:30, только в понедельник») и вычисляет следующие пять раз запуска в вашем местном часовом поясе. Когда вы будете довольны, нажмите Копировать выражение и вставьте его прямо в твой crontab -e файл, Kubernetes CronJob, GitHub Расписание действий или любая другая система, поддерживающая cron.

Общие примеры Cron

Expression Meaning
* * * * * Every minute
*/5 * * * * Every 5 minutes
0 * * * * Every hour, on the hour
0 0 * * * Every day at midnight
0 2 * * * Every day at 2:00 AM
0 0 * * 0 Every Sunday at midnight
0 9 * * 1-5 At 9:00 AM, Monday through Friday
0 0 1 * * At midnight on the first day of every month
30 4 1 * * At 4:30 AM on the 1st of each month
0 0 1 1 * At midnight on January 1st (yearly)
*/15 9-17 * * 1-5 Every 15 minutes during business hours on weekdays

Где используются выражения Cron

Cron начал свою жизнь как демон Unix, но синтаксис стал лингва-франка для описание повторяющихся расписаний для всего стека программного обеспечения. Вы столкнетесь с cron выражения во многих местах:

  • Кронтаб Linux и macOS — оригинальный планировщик, отредактированный с помощью crontab -e.
  • Конвейеры CI/CD — Действия GitHub schedule триггеры и GitLab CI schedules оба используют cron.
  • Облачные планировщики — AWS EventBridge, Google Cloud Scheduler и Azure. Все функции-таймеры принимают скорости, подобные cron.
  • Платформы приложений — Весна @Scheduled, Задача Laravel Планирование, Celery Beat и пакеты Node.js, такие как node-cron.
  • Оркестровка контейнеров — Кубернетес CronJob ресурсы запускать поды по расписанию cron.
  • Базы данных и CMS — WordPress WP-Cron, Magento и множество резервных копий инструменты полагаются на cron.

Советы по написанию надежных заданий Cron

Cron прост, но некоторые ошибки застают людей врасплох. Помните об этом и о своих запланированных задачах. будет работать надежно:

  • Избегайте полуночной суеты. Каждый ставит перед собой задачу 0 0 * * *. шататься загруженные времена с 17 0 * * * или 30 1 * * * для распределения нагрузки.
  • Помните об окружающей среде. Cron работает в крошечной среде и редко оболочка. Всегда используйте абсолютные пути и устанавливайте PATH если вам это нужно.
  • Имейте в виду день месяца и день недели. Когда оба ограничены (не * или ?), стандартный cron срабатывает при совпадении либо, не оба. Используйте объяснение этого инструмента, чтобы перепроверить логику.
  • Следите за часовым поясом. Системный cron использует часовой пояс сервера. Облачные планировщики часто по умолчанию используется UTC. Этот генератор предварительного просмотра работает в вашем местный часовой пояс браузера, показано выше.
  • Протестируйте предварительный просмотр при следующем запуске. Перед развертыванием проверьте «Следующие 5 запусков». раз», чтобы подтвердить, что расписание сработает тогда, когда вы ожидаете.

Часто задаваемые вопросы

Что значит */5 * * * * имею в виду?

Это означает «каждые 5 минут». */5 значение шага: начиная с 0 и каждый раз шагая на 5, поэтому задание запускается на 0, 5, 10, 15,… 55 минуте каждого часа.

Что значит 0 9 * * 1-5 имею в виду?

Это означает «в 9:00 утра с понедельника по пятницу». Минута – 0, час – 9, день недели. диапазон 1-5 охватывает понедельник (1) по пятницу (5).

Как мне выполнять работу каждое воскресенье?

Использование 0 0 * * 0 в полночь каждое воскресенье. В cron воскресенье может быть либо 0 или 7.

В чем разница между 5-полевым и 6-полевым cron?

Стандартный cron Unix использует 5 полей (минута, час, день, месяц, день недели). Кварц и множество облаков планировщики добавляют ведущий секунды поле для более точного управления. Используйте переключатель выше сетку полей для переключения между режимами 5 и 6 полей.

Поддерживает ли cron секунды?

Стандартный Unix cron делает нет поддерживают секунды — их наименьшая единица — единица минута. Quartz, Spring и некоторые облачные планировщики поддерживают необязательное поле начальных секунд.

Мои данные куда-нибудь отправляются?

Нет. Этот генератор cron полностью работает в вашем браузере. Ваши выражения никогда не покидают ваше устройство, что делает его безопасным для использования даже с внутренними расписаниями.

Начните строить свое расписание

Прокрутите обратно вверх, выберите пресет или начните с * * * * *и настройте каждый поле. Посмотрите живое объяснение и предварительный просмотр следующего обновления по мере ввода, а затем скопируйте готовый вариант. выражение. Планируете ли вы резервное копирование базы данных, ежедневный отчет или Kubernetes CronJob, генератор cron Caitty за считанные секунды предоставит вам правильный синтаксис — бесплатно, без каких-либо требуется регистрация.

Реклама