Формат Cron

Формат Cron представляет собой простой, но достаточно мощный и гибкий способ описаний периодических действий.

Формат:



* * * * *
или
Минута Час День Месяц ДеньНедели

  Диапазон
Минута
0-59
Час
0-23
День
1-31
Месяц
1-12
ДеньНедели 1-7 (1 = понедельник, 2 = вторник, ..., 7 = воскресенье)

Можно использовать список значений, разделенных запятыми (например "1,3,7"), или используя символ “черточка” (например “1-5”). Вместо значения можно использовать звездочку - это означает полный диапазон.

Действие происходит, только если удовлетворяются все условия.

Примеры:

* * * * *
Каждую минуту
59 23 31 12 5
За минуту до конца года, и если последний день года - пятница.
45 17 7 6 *
Каждый год 7-го июня в 17:45
0,15,30,45 0,6,12,18 1,15,31 * *
По полным четвертям часа; в полночь, в 6 утра, по 1-м, 15-м и 31-м числам каждого месяца, только по рабочим дням недели
0 12 * * 1-5
В полдень по рабочим дням
* * * 1,3,5,7,9,11 *
Каждую минуту в январе, марте, мае, июле, сентябре и ноябре
1,2,3,5,20-25,30-35,59 23 31 12 *
В последний день года в 23:01, 23:02, 23:03, 23:05, 23:20, 23:21, 23:22, 23:23, 23:24, 23:25, 23:30, 23:31, 23:32, 23:33, 23:34, 23:35, 23:59
0 9 1-7 * 1
Первый понедельник каждого месяца, в 9 утра
0 0 1 * *
В полночь, первого числа, каждый месяц
* 0-11 * * *
Каждую минуту до полудня
* * * 1,2,3 *
Каждую минуту в январе, феврале и мае
0 0 * * *
Каждый день в полночь
0 0 * * 3
Каждую среду в полночь

Строки Cron можно сокращать путем опускания крайних правых звездочек:

Полная запись Сокращенная запись
* * * * *
*
59 23 31 12 5
59 23 31 12 5
45 17 7 6 *
45 17 7 6

0,15,30,45 0,6,12,18 1,15,31 * *
0,15,30,45 0,6,12,18 1,15,31
0 12 * * 1-5
0 12 * * 1-5
* * * 1,3,5,7,9,11 *
* * * 1,3,5,7,9,11
1,2,3,5,20-25,30-35,59 23 31 12 *
1,2,3,5,20-25,30-35,59 23 31 12
0 9 1-7 * 1
0 9 1-7 * 1
0 0 1 * *
0 0 1
* 0-11 * * *
* 0-11
* * * 1,2,3 *
* * * 1,2,3
0 0 * * *
0 0
0 0 * * 3
0 0 * * 3

Существует возможность использовать шаг, указывающийся после интервала через дробь. Например,"0-23/2" может использоваться в поле часов для указания того, что действие должно происходить каждые два часа (альтернатива из старого варианта - "0,2,4,6,8,10,12,14,16,18,20,22"). Шаг может использоваться также после звездочки, для действия, происходящего через каждые четыре минуты, используйте "*/4"