Shell
除週五的特定時間範圍外,每小時 Cron 作業
我希望我的 cron 作業每小時執行一次,除了星期五,我不希望它在凌晨 2 點到 9 點之間執行(但在此時間範圍之外每小時執行一次)。理想情況下,我希望在一行/一個 cron 工作中實現這一點。到目前為止,我有 2 行(我不是 100% 確定它是正確的):
0 0 * * 0,1,2,3,4,6 script.sh 0 0-1,10-23 * * 5 script.sh
格式似乎是正確的(在上面的評論中發布了更正後)。將所有內容放在一行中是否有一些特殊限制?如果您需要將所有內容放在一行中,我建議更改 shell 腳本以避免星期五凌晨 2 點到 9 點,例如
#!/bin/bash # 此程式碼未經測試 # 週五凌晨 2-9 點跳過 # 什麼是非執行時間? 開始時間 = 2 結束時間 = 9 # 獲取目前星期幾 DAY=$(date +"%u") # 1-星期一,因此 5-星期五 # 和小時 小時=$(日期 +"%H") if [ "$DAY" -eq 5 -a "$HOUR" -ge "$STARTTIME" -a "$HOUR" -le "$ENDTIME" ] 然後 # 結束執行 出口 0 是
希望對解決問題有所幫助!
坦率