ИНСТР-CRON-WEEKDAYS* * * * 1-5Без выходныхревизия 2026-05-07

Cron в будни

0 9 * * 1-5 — запуск только в рабочие дни. Без субботы и воскресенья. Для бизнес-задач: рассылка, отчёты, алерты.

⏱ работает в браузере · без регистрации
Инструмент · ИНСТР-CRON-WEEKDAYS|real-time
calcal.ru / cron-budni-rabochee-vremya
Загрузка инструмента…
5
Рабочих дней
260
Дней в году
1-5
День недели
0
Запросов к серверу

Выражение для будней

Будни в cron — это дни недели 1-5 (пн-пт). Пятое поле cron-выражения — день недели от 0 (воскресенье) до 6 (суббота), плюс 7 как альтернативное воскресенье. Базовое выражение для буднего запуска: 0 9 * * 1-5.

Разбор:

  • 0 — минута 0.
  • 9 — час 9 (9:00).
  • * — день месяца: любой.
  • * — месяц: любой.
  • 1-5 — день недели: понедельник (1) - пятница (5).

Запускается 5 раз в неделю × 52 недели = 260 раз в год (или 261 в високосный).

Полезные шаблоны

ВыражениеКогдаПрименение
0 9 * * 1-5Будни 9:00Утренняя планёрка, рассылка
0 18 * * 1-5Будни 18:00Вечерний отчёт
0 9-18 * * 1-5Будни 9-18 каждый часРабочие алерты, мониторинг
*/15 9-18 * * 1-5Будни каждые 15 минFrequent business sync
0 9,13,17 * * 1-5Будни 9, 13, 173 раза за рабочий день
0 12 * * 1-5Будни в обедLunchtime push notification
0 9 * * 1Понедельник 9:00Weekly review
0 16 * * 5Пятница 16:00End-of-week report

Дни недели в cron

Главный источник путаницы — нумерация дней недели. Правила:

  • 0 = воскресенье (POSIX стандарт)
  • 1 = понедельник
  • 2 = вторник
  • 3 = среда
  • 4 = четверг
  • 5 = пятница
  • 6 = суббота
  • 7 = воскресенье (для совместимости с Vixie cron, не во всех системах)

Также можно использовать буквенные сокращения: SUN, MON, TUE, WED, THU, FRI, SAT (на английском). Например: 0 9 * * MON-FRI = 0 9 * * 1-5. Не все cron-реализации поддерживают буквенный формат, для надёжности используйте цифры.

The day-of-week field uses 0 (zero) for Sunday. Some implementations also accept 7 for Sunday, but POSIX standard recommends 0. Note that ranges are inclusive: 1-5 means Monday through Friday.POSIX cron specification, IEEE Std 1003.1

Праздники РФ

Cron не знает праздничные дни. Если 0 9 * * 1-5 запустится в рабочий день по календарю, но это праздник, задача всё равно сработает. В России официальные праздники:

  • 1-8 января — Новогодние каникулы
  • 23 февраля — День защитника Отечества
  • 8 марта — Международный женский день
  • 1 мая — Праздник Весны и Труда
  • 9 мая — День Победы
  • 12 июня — День России
  • 4 ноября — День народного единства

Также возможны «переносные» дни (когда праздник попадает на выходной, рабочий день переносится на следующий понедельник). Это решает Производственный календарь от Минтруда РФ.

Решение: проверка в скрипте

#!/bin/bash
# Список праздников 2026 (формат YYYY-MM-DD)
HOLIDAYS=(
  "2026-01-01" "2026-01-02" "2026-01-03" "2026-01-04"
  "2026-01-05" "2026-01-06" "2026-01-07" "2026-01-08"
  "2026-02-23" "2026-03-08" "2026-05-01" "2026-05-09"
  "2026-06-12" "2026-11-04"
)

today=$(date +%Y-%m-%d)
for holiday in "${HOLIDAYS[@]}"; do
  if [ "$today" = "$holiday" ]; then
    echo "Today is a holiday, skipping job."
    exit 0
  fi
done

# Запуск рабочей логики
/path/to/your/job.sh

Решение: API производственного календаря

Для динамической проверки используйте API производственного календаря: https://isdayoff.ru/2026-05-01?cc=ru вернёт 1 если день выходной/праздник, 0 если рабочий. Бесплатно, не требует API ключа. В скрипте: если 1 — пропустить, если 0 — выполнить.

ИСТОЧНИКИ
  1. POSIX crontab specification. IEEE / Open Group. pubs.opengroup.org/onlinepubs/9699919799/utilities/crontab.html. 2018.
  2. Производственный календарь РФ. КонсультантПлюс. consultant.ru/law/ref/calendar. 2026.
  3. isdayoff.ru API — определение рабочего дня. isdayoff.ru. isdayoff.ru. 2024.
ЧАСТЫЕ ВОПРОСЫ

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

В пятом поле (день недели) укажите 1-5: 0 9 * * 1-5 — каждый будний день в 9:00 утра. Дни недели в cron: 0 = воскресенье, 1 = понедельник, 2 = вторник, 3 = среда, 4 = четверг, 5 = пятница, 6 = суббота, 7 = воскресенье (для совместимости). Поэтому 1-5 = пн-пт.
0 9-18 * * 1-5 — каждый час с 9:00 до 18:00 в будние дни. Запускается в 9:00, 10:00, 11:00... 18:00 = 10 раз в день × 5 дней = 50 раз в неделю. Используется для: рабочих алертов, обновления дашбордов, проверок статуса (только когда команда онлайн).
Если ОБА поля заданы (день месяца И день недели) — Vixie cron трактует как ИЛИ. Например: 0 9 1 * 1-5 = «9:00 1-го числа ИЛИ в любой будний день». Это часто неожиданно. Если хотите И — используйте только одно поле, или комбинируйте через day-of-week + проверку даты в скрипте.
Cron не знает российских праздников: 1-8 января, 23 февраля, 8 марта, 1 и 9 мая, 12 июня, 4 ноября. Если 0 9 * * 1-5 совпадёт с праздником — задача всё равно запустится. Решения: (1) В скрипте проверять дату и пропускать, если праздник. (2) Использовать calendar API (например, productioncalendar.ru API). (3) Перенести задачу на следующий рабочий день вручную в начале года.
0 9 * * 6,0 или 0 9 * * 0,6 — субботы (6) и воскресенья (0). Эквивалент 0 9 * * 6-7 (т.к. 7 = вс). Используется реже: для weekend-only сервисов (sport stats, развлекательный контент). Большинство B2B задач не делают в выходные — нет смысла.
0 9 * * 1 — каждый понедельник в 9:00. Используется для: weekly digest, недельный обзор продаж, понедельничный планёрки backup. ВНИМАНИЕ: если понедельник — праздник (например, 8 марта), задача пропустится. Если 8 марта в этом году вторник — задача в понедельник 7 марта запустится (хотя многие отдыхают). Учитывайте.
Стандартный cron не умеет. Решения: (1) Запускать каждый день, в скрипте проверять «1-7 число И будний». Псевдокод: <code>day=$(date +%d); dow=$(date +%u); if [ $day -le 7 ] && [ $dow -le 5 ] && [ это первый будний ]; then ...</code> (2) Quartz scheduler с спецсинтаксисом (1W = первый будний после 1-го). (3) AWS EventBridge с cron expression LW.
Будни — понятие культурное. В России и Европе пн-пт. В арабских странах (Саудовская Аравия) воскресенье-четверг (раньше пт-сб выходные, сейчас сб-вс). В Израиле вс-чт. Если ваше приложение глобальное и нужны «будни в каждой стране» — используйте библиотеку moment-business-days или date-holidays с правильной локалью.
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.

Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.

Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.

Ограничение ответственности. Авторы и разработчики сервиса не несут ответственности за прямой или косвенный ущерб, возникший из-за использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию результатов.