crontab 是 Linux 內建的機制,根據設置時間參數來執行例行性的工作排程。
前五項參數 + 執行的command
依序是分鐘
(0-59), 小時
(0-23), 日期
(1-31), 月份
(1-12), 星期
(0-6), 指令
參數為0-59
, 0-23
, 1-31
, 1-12
, 0-6
, 執行的command
參數意義
【*】
:星號,代表任何時刻都接受的意思【,】
:逗號,代表分隔時段。例如:30 8,15 * * *
,代表早上 8 點半和下午3點半執行 【-】
:減號,代表一段時間範圍。例如:0 9-12 * * * command
,代表從 9 點到 12 點的每個整點執行【/n】
:斜線,n 代表數字,表示每個 n 單位間隔。例如:* */1 * * *
,代表每隔 1小時執行一次 command。
crontab 操作
crontab 是會根據不同的使用者去判定可以操作的範圍。
$ crontab -l
: 列出該使用者擁有的 crontab 指令$ crontab -e
: 編輯該使用者的 crontab 指令$ crontab -r
: 將使用者的 crontab 全部清除!
編輯完存檔離開([ESC][:][wq])
範例參考
$
* */1 * * * /home/xxx/python/fetchA.py & /home/xxx/python/fetchB.py
舉例: fetchA.py fetchB.py是兩隻爬蟲程式,crontab 每一個小時會自動執行