Я имею, устанавливают резервное вращение на песни 6 crontab, один сценарий должен работать Находившийся Понедельником, другой в воскресенье, никогда на 1-м из месяца. Однако еженедельник (в воскресенье только) сценарий работал каждую ночь, и ежедневная газета работала на воскресенье. Подтвержденный cron.log
#Daily - Midnight, Mon-Sat, Not on the 1st of the Month
0 0 2-31 * 1-6 script_daily
#Weekly - Midnight, Sunday, Not on the 1st of the Month
0 0 2-31 * 0 script_weekly
Я не могу разработать то, что я делаю неправильно?
Править: Я вытянул соответствующие строки от журнала крона. 28-м было воскресенье.
Jun 28 00:00:01 backup CROND[2000]: (root) CMD (script_daily)
Jun 28 00:00:01 backup CROND[2004]: (root) CMD (script_weekly)
Jun 29 00:00:01 backup CROND[9438]: (root) CMD (script_daily)
Jun 29 00:00:01 backup CROND[9443]: (root) CMD (script_weekly)
Jun 30 00:00:02 backup CROND[6893]: (root) CMD (script_daily)
Jun 30 00:00:02 backup CROND[6898]: (root) CMD (script_weekly)
Man page
.If you spec-
ify both a day in the month and a day of week, it will be interpreted
as the Nth such day in the month.
[...]
To request the last Monday, etc. in a month, ask for the "5th" one.
This will always match the last Monday, etc., even if there are only
four Mondays in the month:
# run at 11 am on the first and last Mon, Tue, Wed of each month
0 11 1,5 * mon-wed date
When the fourth Monday in a month is the last, it will match against
both the "4th" and the "5th" (it will only run once if both are speci-
fied).
In short...
0 0 2-31 * 1-6 script_daily
От второго до последнего понедельника/четверга/средины/четверга/пятницы/субботы каждого месяца
0 0 2-31 * 0 script_weekly
От второго до последнего воскресенья каждого месяца
Я подозреваю, что правильный ответ - это "научить ваши сценарии немедленно выходить из системы, если они видят, что они работают 1-го числа месяца", а затем выполнять свои задания как
0 0 * * 1-6 script_daily
0 0 * * 0 script_weekly