Я вижу эту настройку cron в crontab, и мне любопытно, когда скрипт фактически выполняется.Когда выполняется это задание cron?
8 10 * * 6 expr `date +\%W` \% 2 == 1 >/dev/null || /path/to/script/scriptToRun.sh
Я вижу эту настройку cron в crontab, и мне любопытно, когда скрипт фактически выполняется.Когда выполняется это задание cron?
8 10 * * 6 expr `date +\%W` \% 2 == 1 >/dev/null || /path/to/script/scriptToRun.sh
Такой придирчивый синтаксис ...
8 10 * * 6 expr `date +\%W` \% 2 == 1 >/dev/null || /path/to/script/scriptToRun.sh
Во-первых, cronjob:
+---------------- minute (0 - 59)
| +------------- hour (0 - 23)
| | +---------- day of month (1 - 31)
| | | +------- month (1 - 12)
| | | | +---- day of week (0 - 6) (Sunday=0 or 7)
| | | | |
* * * * * command to be executed
8 10 * * 6
Таким образом, в данном случае это означает, что cronjob запускается на выполнение каждую субботу в 10.08 ,
Затем man date
говорит:
% W
номер недели в году, с понедельника в первый день недели (00..53)
$(date +\%W) \% 2 == 1 >/dev/null
означает: если номер недели не кратен 2, а затем отправить выход dev/null. В противном случае, действуйте нормально.
Таким образом, сценарий запускается каждую субботу в 10.08.
Отлично, спасибо за ответ. – user1015492