1. 程式人生 > >Linux命令列學習之路(七)——定時執行

Linux命令列學習之路(七)——定時執行

對於一些命令我們並不是想讓其馬上執行,而是等待一定時間或者到某個時間再執行,我們需要怎麼做?

at命令:延時執行一個程式(通過:apt-get install at 進行安裝)

命令使用方法:

1、輸入:at 【時間】  

這個時間可以是具體的時間,例如:at  15:32 12/1/15  意思是在2015年12月1日15點32分執行。又或者:at now +10 minutes 意思是在10分鐘後執行

2、輸入想要執行的命令,例如:mkdir text  意思是在剛剛輸入的時間,在本目錄下建立一個text目錄

當建立完成後可以通過atq命令進行檢視,還可以用 atrm【任務號】對任務進行刪除

sleep命令

:休息一下

本來在終端輸入:touch a.txt  ; rm a.txt  會直接執行建立和刪除

但是如果在中間加入了slee命令,則可以造成不同的效果

例如:touch a.txt  ;sleep 10min ; rm a.txt 意思是,建立a.txt檔案,然後15分鐘後刪除


接下來說一下||&&三個邏輯符號

||符號表示:前面的命令執行失敗,則後面的命令得以執行

&&符號表示:前面的命令執行成功,則後面的命令得以執行

:符號表示:無論前面是否執行成功,後面命令都可以執行

剛剛所說的at命令只是在具有延時執行一個命令的能力,下面說的這個命令將會無比強大,可以定時多次執行命令

crontab命令:定時執行程式

系統本身自帶沒有這個命令,需要安裝之後使用

Ubuntu系列的系統輸入:sudo apt-get install cron(安裝)  service cron start (啟動)

CentOS系列的系統輸入:sudo yum install vixie-cron crontabs (安裝)  service crond start (啟動)

:這裡如果想用nano編譯器來配置crontab命令的話,就輸入:vim .bachrc  在最後一行輸入 export EDITOR=nano(個人覺得vim就很好,沒必要用nano)

重要引數:

-l:檢視crontab檔案,可以檢視現在寫好的crontab命令

-e:修改crontab檔案,輸入:crontab -e 就可以建立修改crontab檔案

-r:刪除crontab檔案,個人建議不適用

廢話了那麼多,現在終於正式可以編輯crontab命令了,輸入:crontab -e

最上面的第一行為:# m h  dom mon dow   command  (這個是命令格式,那麼我們接下來一一解釋一下)

【分鐘】【小時】【幾號】【幾月】【星期幾】【命令】

    0-59        0-23       1-31         1-12       1-7          命令

例如:15 12 * * * ls /home >> file.txt  意思是:每天12點15分列出/home下命令並輸出到file.txt末尾

其中:

* (星號)代表任何時刻 ,(逗號)代表分隔時候。如3點與6點 就是3,6  -(減號)代表一段時間範圍內。如:3點到6點 就是3-6  /n(斜線)n代表數字,即每隔n單位。如每隔五分鐘,/5

如果需要執行的是.sh檔案的話,輸入:sh  【檔名】

希望這部分的總結對各位讀者有一定的幫助,如有不對請指出糾正,謝謝!