Формат даты и времени Cron

Наверх  Предыдущий  Следующий

Формат Cron позволяет описывать время и повторяемость задач быстро и эффективно; это считается более гибким вариантом по сравнению с выбором даты и времени из календаря, но почти таким же простым.

 

 

Формат

 

Классический формат состоит из пяти полей разделённых пробелами: <Минута> <Час> <Число> <Месяц> <День недели>. В расширенной версии добавляется ещё шестое поле: <Минута> <Час> <Число> <Месяц> <День недели> <Год>.

 

Диапазоны

 

Год: 1900-3000
День недели: 1-7, где 1 - понедельник и 7 - воскресенье
Месяц: 1-12, в соответсвии со стандартным порядком от января до декабря
День месяца: 1-31
Часы: 0-23; полночь обозначается нулём ( 0 )
Минуты: 0-59

 

 

Маски

 

Только знак звёздочки (*) - определяющий полный диапазон для поля допустим для всех полей. Знак вопроса допустим только для первых четырёх полей.

 

Любое из полей может содержать список значений, разделенных запятыми (наприимер, 1,3,7) или интервал (поддиапазон) значений, обозначаемый дефисом (например, 1-5).

 

После звездочки (*) или интервала можно с помощью символа / указать шаг значений. Например, 0-23/2 может использоваться в поле "Часы" для указания того, что действие должно происходить каждые два часа (альтернатива из старого варианта - 0,2,4,6,8,10,12,14,16,18,20,22), значение */4 в поле "Минуты" означает, что действие, должно происходить каждые четыре минуты, 1-30/3 - это то же, что и 1,4,7,10,13,16,19,22,25,28.

 

В полях "Месяцы" и "Дни недели" можно вместо числовых значений использовать сокращенные до трех букв английские названия месяцев (Jan, Feb ... Dec) и дней недели (Mon, Tue ... Sun)

 

Примеры

 

* * * * *

каждую минуту

59 23 31 12 5

за минуту до конца года, если последний день года - пятница

59 23 31 Dec Fri                

за минуту до конца года, если последний день года - пятница (еще один вариант записи)

45 17 7 6 *                      

Каждый год 7-го июня в 17:45

0,15,30,45 0,6,12,18 1,15,31 * 1-5

 

*/15 */6 1,15,31 * 1-5

В 00:00, 00:15, 00:30, 00:45, 06:00, 06:15, 06:30, 06:45, 12:00, 12:15, 12:30, 12:45, 18:00, 18:15, 18:30, 18:45, если сейчас 1-е, 15-е или 31-е число  любого месяца и только по рабочим дням недели (еще один вариант записи)

0 12 * * 1-5 (0 12 * * Mon-Fri)  

В полдень по рабочим дням

* * * 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 *

Каждую минуту в январе, феврале и марте

* * * Jan,Feb,Mar *

Каждую минуту в январе, феврале и марте

0 0 * * *

Каждый день в полночь

0 0 * * 3

Каждую среду в полночь

       

 

 

Пользователи программы могут использовать в первых четырех полях cron-формата нестандартный символ - ?. Он означает время старта программы, т. е. при обработке поля знак вопроса будет заменен на время старта: минуты - для поля минут, час для поля часов, день месяца для поля дней месяца и месяц для поля месяца.

 

Например, если написать:

 

? ? * * *

 

то задача сработает в момент старта программа и продолжит срабатывать ежедневно в это же самое время (если, конечно, пользователь не перезагрузит программу снова) - знаки вопроса "заменятся" на время старта. Если программа стартовала, например, в 8:25, то знаки вопросов заменятся так:

25 8 * * *

 

Примеры

 

? ? ? ? *

запустится только при старте программы

? * * * *

запустится при старте программы (например, в 10:15)  и продолжит запускаться ровно через один час:  в 11:15, 12:15, 13:15 и т. д.

* ? * * *

будет запускаться ежеминутно, в час старта программы. На следующий день (если программа  не перезапускалась)  в этот же час каждую минуту и т. д.

*/5 ? * * *

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

 

 

Смортите также:

Формат iCalendar

Планировщик