Linux的任務計划管理


         在手機中,我們常常使用備忘錄或者是鬧鍾等來提醒我們該做什么事情了,在Linux操作系統中,也有類似的操作。

      在Linux中除了用戶即時執行的命令操作以外,還可以配置在指定的時間、指定的日期執行預先計划好的系統管理任務(如定期備份、定期采集監測數據)。RHEL6系統中默認已安裝了at、cronie軟件

包,通過atd和crond這兩個系統服務實現一次性、周期性計划任務的功能,並分別通過at、crontab命令進行計划任務設置。

、at—一次性計划任務

 1、准備

 at的適用前提是at程序已經安裝並運行atd服務(atd服務是Linux下一次性定時計划任務命令的守候進程)

  如果沒有安裝at程序則需要首先安裝at程序—— yum install at -y

  如果沒有運行atd服務則需啟動atd服務—— systemctl restart atd;查看是否成功啟動atd服務可以用命令  ps aux | grep  atd  來抓取atd進程信息,如下圖所示即為成功。

2、設置at計划任務  

  接下來萬事俱備,我們便可以調用at程序來設置我們的一次性計划任務了

  at的格式是 ——at  H:M   Y-m-d (H/M:小時/分鍾    Y/m/d:年/月/日)特別注意at的時間格式,若是不加上后面的年月日便自動表示為今天,則為12小時制,上午要在時間后標明am(上午)或pm(下午)。

  打出命令后,會彈出可供輸入的命令行,在里面輸入想要執行的操作后,摁 Ctrl + d 保存

  設置完可以用—— at -l 或者 atq 來查看已設置的計划

3、刪除計划任務

  當我們不想要這個計划后,可以輸入 atrm i  來進行刪除操作(i代表計划任務的編號,每個任務都會在行首 標明編號,可以利用at -l 或atq來查看)。   值得注意的是刪除任務后編號不會歸零而是繼續向下順位。

4、特殊計划任務的寫法

二、crontab定時任務的使用

語法與常用命令 

 相比於一次性計划任務,crontab可以多次的執行計划,可以在固定的某月某周某天某時某分來執行,也可以設置為每經過多長時間便執行一次

  它的語法為—— crontab -u  -e

     -l:list,列出指定用戶的計划任務列表——查看命令

               -e:edit,編輯指定用戶的計划任務列表

               -u:user,指定的用戶名,如果不指定,則表示當前用戶

               -r:remove,刪除指定用戶的計划任務列表

編寫計划任務

  在進入 -e 編輯模式后,已行為單位,每一行就是一個計划,需要執行的命令要寫成絕對路徑的格式,

   代表取值范圍里的每一個數字,拿第一個舉例子,如果第一位是  則代表每一分鍾都會執行一次該命令

    - 代表取值范圍,例如 在 10點到12點之間就可以在第二個 設置為  10-12 即可

    / 代表每多少個,例如想要每10分鍾執行一次,可在分的位置設置  */10

    代表多個數值,例如想在1,2,6點執行,便可在時的位置設置為 1,2,6

  

 刪除任務計划

    我們想要刪除剛剛編寫的計划,用——crontab  -r就可以進行全部刪除注意這個命令是全部刪除,但是有時候我們創建了多條計划想進行批量刪除可以進入編輯模式,然后在不想要的計划前面加上#(其實就是把這一行注釋掉啦)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM