Использование Cron для еженедельной и ежемесячной задачи

Есть ли выражение crontab, которое позволит мне запланировать выполнение задачи еженедельно И первого числа каждого месяца? Конечно, я мог бы разбить их на две отдельные строки:

15 3 * * 1,4 execute_task_weekly
15 3 1 * * execute_task_monthly

Но если 1-е число месяца совпадает с понедельником или четвергом, то эта задача запустится дважды. Я уверен, что мог бы поместить некоторый код в скрипт, который я запускаю, а затем просто сказать cron, чтобы он запускался ежедневно, но я бы предпочел делать это в cron, если это возможно.


person jlemley    schedule 24.05.2014    source источник
comment
Рискуя показаться глупым; почему вы хотите запускать и еженедельно, и раз в месяц?   -  person Philip Adler    schedule 24.05.2014
comment
Хороший вопрос! Задача состоит в том, чтобы обновить таблицу базы данных с исторической информацией. Нам нужны данные за текущий месяц, а затем в конце каждого месяца завершать данные за предыдущий месяц и инициализировать текущий месяц.   -  person jlemley    schedule 24.05.2014


Ответы (1)


Из разговора, который у нас был в комментариях, похоже, что ваша запланированная задача требует двойной работы: выполнение одной работы каждую неделю, а затем немного другой работы в конце месяца. По этой причине (а также из-за того, что, изучив документацию, я не думаю, что вы можете делать то, что хотите), я бы предложил иметь две разные задачи/скрипты и запускать их в два разных времени.

person Philip Adler    schedule 24.05.2014