linux計畫任務
linux 系統則是由 cron (crond) 這個系統服務來控制的。linux 系統上面原本就有非常多的計畫性工作,因此這個系統服務是預設啟動的。另 外, 由於使用者自己也可以設定計畫任務,所以, linux 系統也提供了使用者控制計畫任務的命令 :crontab 命令。
crond 是linux下用來週期性的執行某種任務或等待處理某些事件的乙個守護程序,與windows下的計畫任務類似,當安裝完成作業系統後,缺省會安裝此服務 工具,並且會自動啟動crond程序,crond程序每分鐘會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。
計畫任務分為一次性計畫任務(at)和週期性計畫任務(croutab)。
linux任務排程的工作主要分為以下兩類:
*系統執行的工作:系統週期性所要執行的工作,如備份系統資料、清理快取
*個人執行的工作:某個使用者定期要做的工作,例如每隔10分鐘檢查郵件伺服器是否有新信,這些工作可由每個使用者自行設定。
一、crond服務的啟動
/sbin/service crond start #啟動服務
/sbin/service crond stop #關閉服務
/sbin/service crond restart #重啟服務
/sbin/service crond reload #重新載入配置
二、crontab命令選項
crond服務提供crontab命令來設定cron服務的,以下是這個命令的一些引數與說明:
crontab -u #設定某個使用者的crond服務,一般root使用者在執行這個命令的時候需要此引數
crontab -l #列出某個使用者crond服務的詳細內容
crontab -r #刪除某個使用者的crond服務
crontab -e #編輯某個使用者的crond服務
crontab -i #在刪除使用者的crontab檔案時給確認提示
比如說root檢視自己的cron設定:crontab -u root -l
再例如,root想刪除fred的cron設定:crontab -u fred -r
三、語法格式
分 小時 日 月 星期 命令
0-59 0-23 1-31 1-12 0-6 command (取值範圍,0表示週日一般一行對應乙個任務)
5 * * * * /bin/ls /home #指定每小時的第5分鐘執行一次ls命令
星號(*):代表所有可能的值。
逗號(,):可以用逗號隔開的值指定乙個列表範圍,例如,「1,2,5,7,8,9」
中槓(-):可以用整數之間的中槓表示乙個整數範圍,例如「2-6」表示「2,3,4,5,6」
正斜線(/):可以用正斜線指定時間的間隔頻率,例如「0-23/2」表示每兩小時執行一次。同時正斜線可以和星號一起使用,例如*/10,如果用在分鐘字段,表示每十分鐘執行一次。
四、例項
30 5 * * * /bin/ls /home 指定每天的 5:30 執行/bin/ls /home命令
30 7 8 * * /bin/ls /home #指定每月8號的7:30分執行/bin/ls /home命令
30 5 8 6 * /bin/ls /home #指定每年的6月8日5:30執行/bin/ls /home命令
30 6 * * 0 /bin/ls /home #指定每星期日的6:30執行/bin/ls /home命令[注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。]
30 3 10,20 * * /bin/ls /home #每月10號及20號的3:30執行/bin/ls /home命令[注:」,」用來連線多個不連續的時段]
25 8-11 * * * /bin/ls /home #每天8-11點的第25分鐘執行/bin/ls /home命令[注:」-」用來連線連續的時段]
*/15 * * * * /bin/ls /home #每15分鐘執行一次/bin/ls /home命令 [即每個小時的第0 15 30 45 60分鐘執行/bin/ls /home命令 ]
30 6 */10 * * /bin/ls /home #每個月中,每隔10天6:30執行一次/bin/ls /home命令[即每月的1、11、21、31日是的6:30執行一次/bin/ls /home命令。 ]
50 7 * * * root run-parts /etc/cron.daily #每天7:50以root 身份執行/etc/cron.daily目錄中的所有可執行檔案[ 注:run-parts引數表示,執行後面目錄中的所有可執行檔案。 ]
五、新增計畫任務的兩種方法
六、注意事項
在新增計畫任務時,所執行的命令和指令碼檔案建議以絕對路徑新增,否則可能會出現無法執行的情況。
七、其他
使用者任務排程:使用者定期要執行的工作,比如使用者資料備份、定時郵件提醒等。使用者可以使用 crontab 工具來定製自己的計畫任務。所有使用者定義的crontab 檔案都被儲存在 /var/spool/cron目錄中。其檔名與使用者名稱一致。
使用者許可權檔案:
檔案:/etc/cron.deny
說明:該檔案中所列使用者不允許使用crontab命令
檔案:/etc/cron.allow
說明:該檔案中所列使用者允許使用crontab命令
檔案:/var/spool/cron/
說明:所有使用者crontab檔案存放的目錄,以使用者名稱命名
Linux計畫任務
1.at命令 指定乙個時間執行乙個任務。2.cron命令 根據乙個時間表自動執行任務。3.anacron命令 在乙個指定時間間隔錯過後自動執行任務。at命令 安排乙個任務在未來執行,需要乙個系統後台atd程序。4.如果這個程序沒有開啟,那麼執行 etc init.d atd restart chkc...
Linux 計畫任務
at命令可以在某一指定時間排程一次性作業命令格式 at q x l f file d v time引數含義 q使用指定的佇列來儲存at資料,預設儲存在a佇列,隊列表號為a z,a z總52個 l列出所有的at計畫任務,等同於atq命令 d刪除at計畫任務,等同於atrm v列出所有已經完成單尚未刪除...
linux計畫任務
cron是乙個linux下的定時執行工具,可以在無需人工干預的情況下執行作業。由於cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動 關閉這個服務 sbin service crond start 啟動服務 sbin service crond stop 關閉服務 sbin se...