2015-11-07 4 views
0

Что бы выражение хрон запускать каждые 4 дня, начиная с 7-го ноября, 18:35 PM 2015 по 25 декабря 2019 11:30 утравыражение хрон для временной сложности

Может кто-то пролить свет на это сложное выражение cron, все примеры, которые я вижу в сети, не объединяли интервальные дни и дату начала/время до окончания времени/даты.

Отношения.

ответ

1
35 18 */4 0 

Это даст вам то, что вы хотите. Я бы использовал проверку даты в сценарии, чтобы сохранить его в выбранном вами диапазоне.

Что-то вроде:

if [$(date +%Y%m%d) -ge 20151107] && [$(date +%Y%m%d) -le 20151225] 

Очевидно, я поспешности в условном ... если вы хотите включить время (11:30 PM) Вы хотели бы либо добавить больше логики или играть с формат даты, чтобы убедиться, что вы получаете то, что вам нужно. Кроме того, я предполагаю, что сценарий, который вы выполняете, является скриптом оболочки. Если это не так, мой синтаксис для условного выражения не является точным.

Вы также можете использовать другие выражения хрон, чтобы начать и закончить работу ... 7 ноября, 18:35 PM 2015 по 25 декабря 2019 11:30 утра

#1 
35 18 7 11 * 2015 chmod +x /path/to/script 

#2 - base 
35 18 */4 0 test -x /path/to/script && /path/to/script 

#3 
30 11 25 12 * 2019 chmod -x /path/to/script 
+0

но где мы упоминали даты и месяцы и время окончания, я вижу только время начала и каждые 4 дня. – rangoon

+0

Да, вы могли бы просто добавить append, например, если [$ today -ge $ start] && [$ today -le $ finish] – tadamhicks

+0

Можете ли вы дать мне выражение cron для вышеуказанного usecase – rangoon

Смежные вопросы