crontab에서 월말까지 남은 일수를 지정할 수 있나요?

crontab에서 월말까지 남은 일수를 지정할 수 있나요?

매주 토요일 오후 11시에 주간 보고서를 생성하는 스크립트와 매월 1일에 월간 보고서를 생성하는 또 다른 스크립트를 실행하고 싶습니다.
토요일이 매월 1일로부터 3일 이내에 해당하는 경우 주간 보고서를 실행하고 싶지 않습니다.

한 달에 한 번입니다.

0 23 1 * * /home/me/monthly.sh

이것은 제가 생각할 수 있는 주간 항목에 가장 가까운 것입니다...

0 23 4-? * 6 /home/me/weekly.sh

물음표를 "월말 3일 전"이라는 의미로 바꿀 수 있나요? 아니면 내 목적에 맞는 다른 방법이 있습니까?

월말이 되기 전에 몇 일 수를 지정할 수 있다는 것은 작업 스케줄러에 갖고 싶은 기능처럼 보이므로 crontab이 이 기능을 수행할 수 없다면 조금 놀랄 것입니다.

내 대안은 Weekly.sh에서 날짜를 확인하고 첫날로부터 3일 이내이면 중지하는 것입니다.

답변1

0 23 * * 6 [ $(date +%e -d "next saturday") -gt 3 ] && /home/me/weekly.sh

관련 정보