天天看點

Linux定時任務指令crontab詳解及示例

介紹

Linux内置了定時任務排程的服務

crontab

。系統預設會自動啟動, 同時每分鐘檢查需要執行的任務。定時任務的最小時間單元是分鐘。

安裝

# Linux服務預設内置
sudo apt-get install cron
           

編輯

# 第一次編輯 會提示選擇編輯器
crontab -e
           

檢視目前定時任務

crontab -l
           

删除

# 删除目前使用者的所有定時任務
crontab -r

# 部分删除, 通過編輯進行修改
           

編輯詳細說明

— 引用線

時間格式如下:

f1 f2 f3 f4 f5 program
           

其中 f1 是表示分鐘,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程式。

當 f1 為 * 時表示每分鐘都要執行 program,f2 為 * 時表示每小時都要執行程式,其馀類推

當 f1 為 a-b 時表示從第 a 分鐘到第 b 分鐘這段時間内要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其馀類推

當 f1 為 */n 時表示每 n 分鐘個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其馀類推

當 f1 為 a, b, c,… 時表示第 a, b, c,… 分鐘要執行,f2 為 a, b, c,… 時表示第 a, b, c…個小時要執行,其馀類推

*    *    *    *    *
-    -    -    -    -
|    |    |    |    |
|    |    |    |    +----- 星期中星期幾 (0 - 7) (星期天 為0)
|    |    |    +---------- 月份 (1 - 12) 
|    |    +--------------- 一個月中的第幾天 (1 - 31)
|    +-------------------- 小時 (0 - 23)
+------------------------- 分鐘 (0 - 59)
           

使用者也可以将所有的設定先存放在檔案中,用 crontab file 的方式來設定執行時間。

— 引用線 結束

https://www.runoob.com/linux/linux-comm-crontab.html

示例:

# 每天早上6點執行以下檔案, 并将print輸出重定向到log檔案中。
# 2>&1表示把标準錯誤作為标準輸出,輸入用0表示,标準輸出用1表示,标準錯誤用2辨別,通過該指令能夠把錯誤一起輸出到log中
0 6 * * * /home/ubuntu/..../myspider.sh >> /home/ubuntu/.../run2.log 2>&1
           

更多示例:

https://www.runoob.com/linux/linux-comm-crontab.html

繼續閱讀