介紹
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