Как: 1 Cron Job каждые минуты ODD и еще 1 каждые EVEN минуты?

43

У меня есть 2 задания cron, я хочу, чтобы одно из них запускалось каждую нечетную минуту (1,3,5,7,9,11 .... 57,59), а другое - каждую четную минуту (0, 2,4,6,8,10,12 ... 58)

как я могу сделать это простым способом? (нет сценариев - только правила работы cron)

wabbajay
источник

Ответы:

73
*/2 * * * * date >>/tmp/even
1-59/2 * * * * date >>/tmp/odd
jj33
источник
упс! Могу поспорить, что вы предоставили правильный синтаксис для части "1-59 / 2" ... Могу ли я спросить, почему, когда я ввожу это в cpanel, это не работает? Он говорит: «Поле Cron не отформатировано правильно ...»
wabbajay
Я не использую cpanel, но я собираюсь выйти на конечность и предположить, что фильтр, который они поместили между вами и настоящим crontab, не считает его действительным. Правда, я набрал это точно в моем crontab на сервере CentOS5 и получил четные минуты в / tmp / четные и нечетные минуты в / tmp / odd. Извините, cpanel отфильтровывает это ...
jj33
это то, что я тоже подозревал ... я установлю это вручную ... спасибо за вашу помощь jj33 :)
wabbajay
7
К вашему сведению, для синтаксиса 1-59 / 2. если вы хотите объяснения, см. stackoverflow.com/a/122499/658023
Генерал Реднек
5
*/2 * * * * /path/to/foo
*/2 * * * * sleep 60; /path/to/bar

Это sleep 60слишком похоже на сценарий?

Марк Вагнер
источник
1
да, это больше похоже на сценарий и наверняка это не просто правила работы cron. все равно спасибо за ваше время;)
wabbajay