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
но где мы упоминали даты и месяцы и время окончания, я вижу только время начала и каждые 4 дня. – rangoon
Да, вы могли бы просто добавить append, например, если [$ today -ge $ start] && [$ today -le $ finish] – tadamhicks
Можете ли вы дать мне выражение cron для вышеуказанного usecase – rangoon