Для работы cron мы знаем, что можем установить время, как показано ниже.
# +------------ Minute (0 - 59)
# | +---------- Hour (0 - 23)
# | | +-------- Day of the Month (1 - 31)
# | | | +------ Month (1 - 12)
# | | | | +---- Day of the Week (0 - 7) (Sunday is 0 or 7)
# | | | | |
# * * * * * command
Что я хочу знать, так это то, что когда мы устанавливаем день месяца 31, означает ли это конец каждого месяца, хотя у месяца нет дня 31. Надеюсь получить ответ.
заранее спасибо
Нет, я думаю, что лучшее, что вы можете сделать, это запустить в полночь 1-го числа месяца или настроить отдельные строки crontab для каждого месяца (или, по крайней мере, строку для месяцев с 28, 29, 30 и 31 днем).
источник
Я не думаю, что вы можете сделать это легко в
crontab
.Один из вариантов - установить
cron
запуск сценария каждый день, а затем заставить сам скрипт проверять, является ли он последним днем месяца.источник
Я предполагаю, что у cron есть специальный символ 'L', предназначенный для этой цели:
выполнит ваш скрипт в последний день каждого месяца
С другой стороны,
Вы даже можете указать что-то вроде:
запускать скрипт в последний понедельник и пятницу каждого месяца
или
запускать сценарий каждый понедельник в полночь.
источник
Это сделает работу:
источник