咱們能夠經過一些設置。來讓電腦定時提醒咱們該作什麼事了。或者咱們提早設置好,告訴電腦你幾點作什麼幾點作什麼,這種咱們就叫它定時任務。而遇到一些須要執行的事情或任務。咱們也能夠經過命令來告訴電腦一會臨時把這個工做給作一下.html
在咱們LINUX中,咱們能夠經過crontab和at這兩個東西來實現這些功能的spa
計劃任務的做用:是作一些週期性的任務,在生產中的主要用來按期備份數據htm
計劃任務的安排方式分兩種:blog
一種是定時性的,也就是例行。就是每隔必定的週期就要重複來作這個事情.crontab
一種是突發性的,就是此次作完了這個事,就沒有下一次了,臨時決定,只執行一次的任務.rem
at和crontab這兩個命令:it
at:它是一個能夠處理僅執行一次就結束的指令class
crontab:它是會把你指定的工做或任務,好比:腳本等,按照你設定的週期一直循環執行下去。test
語法: # at 時間軟件
1.下載at 軟件 yum -y install at
2. 啓動atd 服務 systemctl start std
3.設置任務
at 10:00 #若是是上午時間,後面加上am,好比9:20am
at> touch /tmp/test1 #輸入你要執行的命令
at> <EOT> #按ctrl+d保存
job 1 at Fri Mar 1 10:00:00 2019
4.查看計劃任務
at -l #查看計劃任務
Fri Mar 1 10:00:00 2019 a root
atq #查看計劃任務
Fri Mar 1 10:00:00 2019 a root
5.刪除計劃任務 atm
atrm 1 #刪除計劃任務加上編號
at計劃任務特殊寫法
at 20:00 2018-10-1 在某天
at now +10min 在 10分鐘後執行
at 17:00 tomorrow 明天下午5點執行
at 6:00 pm +3 days 在3天之後的下午6點執行
語法:#crontab -u -e
經常使用選項:
-l:list,列出指定用戶的計劃任務列表
-e:edit,編輯指定用戶的計劃任務列表
-u:user,指定的用戶名,若是不指定,則表示當前用戶
-r:remove,刪除指定用戶的計劃任務列表
crontab -e 編輯時的語法:
0或者7都是表示星期天,另外在這個時間的表達式中,還有些特殊符號,意思以下:
四個符號:
*:表示取值範圍中的每個數字
-:作連續區間表達式的,要想表示1~7,則能夠寫成:1-7
/:表示每多少個,例如:想每10分鐘一次,則能夠在分的位置寫:*/10
,:表示多個取值,好比想在1點,2點6點執行,則能夠在時的位置寫:1,2,6
例:
天天凌晨2點1分:1 2 * * *
每個月一、十、22日的4 : 45:45 4 1,10,22 * *
每個月1到10日的4 : 45:45 4 1-10 * *
每隔兩天的上午8點到11點的第3和第15分鐘:3,15 8-11 */2 * *
注:在計劃任務中,默認的最小單位就是分,不能再小了;全部用戶的計劃任務,都會在/var/spool/cron/下產生對應的文件.