2

У меня есть следующий файл crontab:

2 * * * * /bin/date >> /home/jon/date_from_cron.txt

Я думаю, что это означает "бегать каждые две минуты". Тем не менее, он запускается только один раз. Вскоре после настройки этого файла crontab я проверил /home/jon/date_from_cron.txt и обнаружил, что он содержит следующее:

Tue Jan  8 17:02:01 CST 2013

Десять минут спустя он все еще содержит только одну строку.

Что я делаю неправильно?

РЕДАКТИРОВАТЬ: мне было сказано использовать /2 в начале, чтобы задание запускалось каждые две минуты. Но моя операционная система не поддерживает это. Я пробовал как на Mac под управлением Mountain Lion, так и на машине с Ubuntu. Вот цитата из Интернета относительно этого: «Повторять шаблон, например /2, каждые 2 минуты или /10 каждые 10 минут, поддерживается не всеми операционными системами. Если вы попытаетесь использовать его, и crontab жалуется, что он, вероятно, не поддерживается. "Итак, учитывая, что это не поддерживается на моих машинах, как я могу получить задание для запуска каждые X минут?

3 ответа3

4

Если вы хотите, чтобы задание cron запускалось каждые две минуты, оно должно быть /2 * * * * /bin/date >> /home/jon/date_from_cron.txt

http://www.adminschoice.com/crontab-quick-reference

РЕДАКТИРОВАТЬ: Возможно, попробуйте */2 * * * * /bin/date >> /home/jon/date_from_cron.txt

2
2   *   *   *    *    /bin/date >> /home/jon/date_from_cron.txt
-   -   -   -    -
|   |   |   |    |
|   |   |   |    +----- day of week (0 - 6) (Sunday=0)
|   |   |   +------- month (1 - 12)
|   |   +--------- day of        month (1 - 31)
|   +----------- hour (0 - 23)
+------------- min (0 - 59)

Будет срабатывать каждый час, через две минуты после часа.

1

Это будет выполняться каждые 15 минут в 0, 15, 30 и 45 минут после часа. Должно работать с любой версией cron:

0,15,30,45 * * * * /bin/date >> /home/jon/date_from_cron.txt

Читателю оставлено в качестве упражнения утомительно преобразовывать это в каждые 2 минуты. :)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .