Запуск Cron каждые 2 часа [дубликат]

На этот вопрос уже есть ответ здесь:

У меня есть задание cron, как показано ниже, и я хотел, чтобы оно выполнялось каждые 2 часа, но оно продолжает выполняться каждые 2 минуты.

Может ли кто-нибудь сказать мне, где я ошибаюсь?

  
* */2 * * * /path-to-script
82
задан 21 July 2009 в 16:24
4 ответа

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

Необходимо указать точную минуту для выполнения в течение часа. Будьте этим на часе (0), половина прошлого (30), и т.д.

0 */2 * * * /path-to-script
147
ответ дан 28 November 2019 в 19:25

Первое, что пришло на ум Вы могли попытаться указать все часы, когда это должно работать:

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /path-to-script
13
ответ дан 28 November 2019 в 19:25
  • 1
    */2 является намного более чистым –  David Pashley 21 July 2009 в 16:39
  • 2
    */2, в то время как инструмент для очистки, не является портативным... не работает над solaris и вероятно большинством других вариантов Unix. –  ericslaw 21 July 2009 в 17:26

Корректное описание того, что Вы имели

 * */2 * * * /path-to-script

"выполняется каждую минуту, где час является кратным 2".

Что значит 0:00 для 0:59, 2:00 к 2:59, 4:00 к 4:59... и так далее. Не совсем то же, как "выполнено каждую минуту". Решение, уже данное, допустимо все же.

15
ответ дан 28 November 2019 в 19:25

Также вы можете сделать это:

0 0-23/2 * * * /path/to/the/script

или, если вы хотите быть более конкретными каждые 2 часа, вы можете использовать:

0 0,2,4,6,8,10,12,14,16,18,20,22 * * * /path/to/the/script

Значения часов должны быть разделены запятыми.

.
1
ответ дан 28 November 2019 в 19:25

Теги

Похожие вопросы