linux定時執行任務命令 >> crontab
一、cron服務
在linux中,週期執行的任務一般由cron這個守護程序來處理
啟動服務:/sbin/service crond start
關閉服務:/sbin/service crond stop
檢視服務狀態:/sbin/service crowdstatus
重啟服務:/sbin/service crond restart
重新載入配置:/sbin/service crond reload
二、crontab命令
cron讀取乙個或多個配置檔案,這些配置檔案中包含了命令列及其呼叫時間,cron的配置檔案稱為crontab
crontab -e編輯某個使用者的任務
crontab -l列出某個使用者的任務計畫
crontab -r刪除某個使用者的任務
crontab -u指定乙個使用者
三、cron檔案語法
* * * * * command
分 時 日 月 周 命令
0-59 0-23 1-31 1-12 0-6 (取值範圍,0表示週日)
特殊符號含義
* 代表取值範圍內的數字
/ 代表「每」
- 代表從某個數字到某個數字
, 分開幾個離散的數字
示例 5 * * * * ls 指定每小時的第5分鐘執行一次ls命令
30 5 * * * ls 指定每天的 5:30 執行ls命令
30 7 8 * * ls 指定每月8號的7:30分執行ls命令
30 5 8 6 * ls 指定每年的6月8日5:30執行ls命令
30 6 * * 0 ls 指定每星期日的6:30執行ls命令
更多示例和內容
四、crontab配置問題
檢視crontab配置檔案,path為配置的系統環境
問題:shell命令可以執行指令碼,而在crontab中無法執行
原因:需要執行的指令碼中,包含一些執行命令(比如apktool),而命令的安裝路徑(比如/usr/local/bin/apktool)不在crontab的path中,所以導致command not found
解決:使用crontab執行指令碼,指令碼中的命令和輸出,都使用絕對路徑
可以把結果輸出和錯誤資訊,重定向到log檔案
五、參考鏈結
linux crontab定時執行
本文章基於linux伺服器,使用linux的crontab命令實現任務的定時執行。通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell script指令碼。時間間隔的單位可以是分鐘 小時 日 月 周及以上的任意組合。這個命令非常適合週期性的日誌分析或資料備份等工作。需要...
linux crontab定時執行任務
關於crontab crontab命令常見於unix和類unix的作業系統之中,用於設定週期性被執行的指令。該命令從標準輸入裝置讀取指令,並將其存放於 crontab 檔案中,以供之後讀取和執行。該詞 於希臘語 chronos 原意是時間。通常,crontab儲存的指令被守護程序啟用,crond常常...
Linux crontab定時執行任務
crond是linux下用來週期性的執行某種任務或等待處理某些事件的乙個守護程序,與windows下的計畫任務類似,當安裝完成作業系統後,缺省會安裝此服務工具,並且會自動啟動crond程序,crond程序每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。2 最小時間單位為 分...