1

У меня есть строка в моем crontab, как это:

01 6  * * */3 $TASK

Переменная $ TASK отправляет мне письмо по электронной почте. Я понимаю, что написал cron для запуска этого действия в 06:01 каждый третий день.

Как ни странно, это когда я получаю письма (скриншот с GMail):

В основном они проходят каждый третий день, но регулярно появляются в последующие дни (сегодня и вчера; 1 и 2 марта; 23 и 22 февраля; ...). Кто-нибудь может объяснить, что происходит?

РЕДАКТИРОВАТЬ: Ах, возможно, что сервер Cron просто полностью сбрасывается в субботу вечером? И если так, то это протокол cron или это способ, которым системные администраторы что-то настраивали?

       2014

      January               February               March
Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa  Su Mo Tu We Th Fr Sa
          1  2  3  4                     1                     1
 5  6  7  8  9 10 11   2  3  4  5  6  7  8   2  3  4  5  6  7  8
12 13 14 15 16 17 18   9 10 11 12 13 14 15   9 10 11 12 13 14 15
19 20 21 22 23 24 25  16 17 18 19 20 21 22  16 17 18 19 20 21 22
26 27 28 29 30 31     23 24 25 26 27 28     23 24 25 26 27 28 29
                                            30 31

1 ответ1

2

Вы сказали:

01 6  * * */3 $TASK
┬  ┬  ┬ ┬  ┬
│  │  │ │  │
│  │  │ │  │
│  │  │ │  └───── day of week (0 - 7) (0 to 6 are Sunday to Saturday, or use names; 7 is Sunday, the same as 0)
│  │  │ └────────── month (1 - 12)
│  │  └─────────────── day of month (1 - 31)
│  └──────────────────── hour (0 - 23)
└───────────────────────── min (0 - 59)

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

Вы можете исправить свою работу cron, выполняя ее каждый третий день месяца:

01 6  */3 * * $TASK

Вы также можете обратиться к cron.

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