Crontab выполнять каждые 15 минут в течение двух дней - PullRequest
0 голосов
/ 09 марта 2019

После прочтения руководства по crontab я использовал следующую команду для выполнения моего процесса каждые 15 минут с 18:00 до 23:00 дня.

MIN      Minute field    0 to 59
HOUR     Hour field      0 to 23
DOM      Day of Month    1-31
MON      Month field     1-12
DOW      Day Of Week     0-6
CMD      Command         Any command to be executed.

Моя команда,

*/15 18-23 * * * myexec

Я хочу запустить свой процесс с 18:00 дня до раннего утра 01:30 следующего дня. Я хочу запускать это каждый день. Как мне это сделать?

Второй вопрос, если я запускаю описанный выше процесс только для рабочих дней, верна ли моя следующая команда?

*/15 18-23 * * 1-5 myexec

1 Ответ

2 голосов
/ 09 марта 2019

Вам понадобятся три записи cron для запуска до 1:30:

*/15 18-23 * * * myexec
*/15 0 * * * myexec
0,15 1 * * * myexec

Первые две строки могут быть объединены следующим образом:

*/15 0,18,19,20,21,22,23 * * * myexec

Если вам нужно запустить его только в будние дни, подумайте о тех пробегах с полуночи. Если вы хотите следить за циклом, вам нужно будет запустить один из них в субботу. И команда будет:

*/15 18-23 * * 1-5 myexec
*/15 0 * * 2-6 myexec
0,15 1 * * 2-6 myexec

NB! Если вы хотите запускать его каждые 30 минут (в соответствии с заголовком), вам нужно изменить свои записи cron таким образом

*/30 18-23 * * 1-5 myexec
*/30 0 * * 2-6 myexec
0 1 * * 2-6 myexec
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...