1. 程式人生 > >Linux 第22天 自習 Linux 任務計劃

Linux 第22天 自習 Linux 任務計劃

移除 郵件 lin 沒有 清空 hello dev 命令 發送

Linux 第22天 自習 Linux 任務計劃

時間: 20180809


Linux 任務計劃

一次性執行任務,即設定在未來某個指定的時間執行某個命令

周期性執行任務,設定後會在每隔多久的某個時間執行某個任務


at 一次性執行任務

是一個服務,如果想要使用它需要將服務啟動atd.services

-l 列出當前系統的一次性任務計劃相當於atq

-d 刪除某個任務,相當於atrm

-c job 顯示某任務詳情

-f 把at要執行的所有任務放置於文件中,讓at讀取此文件作為要運行的任務

at 4pm + 3 days 三天後的下午4點

at -t [[CC]YY]MMDDhhmm[.ss]指定具體時間


crontab 周期性的執行任務

基於服務crond來進行周期性執行任務

cron任務有兩類 系統cron和用戶的cron,系統任務是指系統級別的例行性任務計劃

它的制定通過編輯其配置文件/etc/crontab來實現


配置文件格式

前5個* 表示對應的時間點 user-name 用戶身份 command要運行的任務

註意: 建議在定義cron任務時,用到的命令使用絕對路徑;如果是腳本,腳本中

的命令使用絕對路徑,或自定義一個擁有完整路徑的環境變量

五個時間點分別時 分 時 月 日 周

1 8 * * * root /bin/echo "hello"

每天的8:1分執行此任務

*/# 在對應的時間位有效取值上每#個時間單位一次

*/3 * * * * 每三分鐘一次

9 */2 * * * 每2個小時一次

註意雖然分鐘沒有定義但一般都會加一個時間,不然會變成每分鐘一次


連續的時間點

40 3 * * 1-5 每周一到周五


離散時間

30 2 * * 2,4,6 每周二周四周六


對於任務運行後的結果默認郵件發送給任務相關用戶,一般使用&>/dev/null

清空其記錄


用戶級的cron

使用contab來配置用戶級的周期性任務

crontab 創建周期性任務

-l 列出已經定義的任務

-e 打開編輯界面定義任務

-r 移除所有任務



anacron

linux系統當作服務器24小時運行,但如果機器硬件故障或其它原因導致系統關機,重啟

裏邊的重要cron任務已經過時了,但是是非常重要的任務必須要執行,anacron會在系統

開機時會檢查配置文件將過時但未執行的任務在開機的時候將其及時執行一次,然後就

停止了。


Linux 第22天 自習 Linux 任務計劃