Понадобилось мне делать бекап файлов раз в месяц в первую субботу. Файлы пакуются почти сутки, поэтому требовалось делать это в нерабочее время. Как ни странно, но такую простую задачу не получилось решить средствами crontab, например строка:
выполнялась 15 раз в месяц.0 20 1-7 * */6 root /opt/Backup/baсkup_zip.sh > /dev/null 2>&1
В итоге, чтобы долго не заморачиваться добавил проверку дня недели в скрипт резервного копирования и исправил строку в кроне на выполнение с 1 по 7 день каждый месяц в 20:00:
0 20 1-7 * * root /opt/Backup/baсkup_zip.sh > /dev/null 2>&1
В итоге в скрипт получился следующим:# проверяем день недели, должна быть суббота
if [[ $(date +%u) -eq 6 ]] ; then
# выполняем архивирование
fi
# в противном случае ничего не выполняем
exit
Возможно, это решение пригодится вам, если требуется выполнять скрипт по крону в определенный день недели в начале месяца.
Комментариев нет:
Отправить комментарий