Подтвердить что ты не робот

Задание "всех нечетных значений" в crontab?

В crontab я могу использовать звездочку для обозначения каждого значения, или "*/2" для обозначения любого четного значения.

Есть ли способ указать каждое значение нечетное? (Будет ли что-то вроде "1 + */2" работать?)

4b9b3361

Ответ 1

В зависимости от вашей версии cron вы сможете делать (часами, скажем):

   1-23/2

Переход в раздел Расширения в справочной странице crontab (5):

   Ranges can include "steps", so "1-9/2" is the same as "1,3,5,7,9".

Для более портативного решения я подозреваю, что вам просто нужно использовать простой список:

   1,3,5,7,9,11,13,15,17,19,21,23

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

Ответ 2

Каждая нечетная минута была бы следующей:

1-59/2 * * * * 

Каждая четная минута:

0-58/2 * * * * 

Ответ 3

Try

1-23/2

С вашего вопроса, я принимаю Vixie Cron. Я сомневаюсь, что это сработает с любым другим cron.

Ответ 4

Как я читал руководство "1-23/2" (в течение нескольких часов), это сделало бы трюк.

Ответ 5

Работает на Cronie Даже с интервалом в 5 минут, например

3-58/5 * * * * /home/test/bin/do_some_thing_every_five_minute

Ответ 6

Я понимаю, что это почти 10 лет, но у меня были проблемы с получением 1-23/2 за каждые два часа работы в неурочный час.

Для всех пользователей, где точная точность нечетного часа не требуется. Я сделал следующее, которое соответствовало потребностям моей команды.

59 */2 * * *

Выполняйте задание каждые два часа на 59-й минуте.