매달 마지막 일요일에 cronjob을 실행하도록 설정하려고 합니다. 이것이 내가 달성한 것입니다.
현재 매주 일요일 밤 10시에 방송되고 있다.
0 22 * * 0 /usr/basys_bin/clean_cups_cache.sh
답변1
스크립트 상단에서 또는 별도의 스크립트로 해당 월의 마지막 주에만 실행되도록 안전 조치를 설정할 수 있습니다.
예를 들어 다음과 같이 만듭니다./usr/local/bin/lastweekofmonth
#!/bin/bash
# Exit 0 ("OK") iff we are in the last seven days of a month
#
today=$(date +%d) # Day number today
nextweek=$(date --date 'now + 7 days' +%d) # Day number next week
[[ ${today#0} -gt ${nextweek#0} ]] # Implicit exit "OK" if today > next week
실행 가능하도록 만드십시오( chmod +x /usr/local/bin/lastweekofmonth
).
crontab
그런 다음 항목에 사용할 수 있습니다
0 22 * * 0 /usr/local/bin/lastweekofmonth && /usr/basys_bin/clean_cups_cache.sh