首頁 > 網際網路

Linux環境下定時執行任務詳解

2019-12-17 19:12:58

Linux環境下定時執行任務詳解

1

如果我們需要定時執行一些周期性重複性的任務,我們就會用到定時執行任務功能來幫我們自動執行每天、每周等週期性重複性的任務而不需要人為干預即可實現。


2

我們通過crontab –e來建立自己的定時任務,下圖中的5個*的含義是,第一個*是分,第二個*是小時,第三個*是日,第4個*是月,第5個*是周,第6列是命令,下圖的意思是給所有人發警告資訊Hello,每隔一分鐘就傳送一次Hello資訊。



3

我們可以通過crontab –l來檢視當前的已建立的定時任務,可以發現當前有一個定時任務,通過crontab –r刪除當前的定時任務,再次通過crontab –l去檢視是否還有定時任務,發現已經成功刪除了。


4

進入/etc目錄,檢視首字母為cron的目錄,cron*,*在這裡是萬用字元,匹配任意個字元,通過檢視/etc目錄下所有與定時任務相關的目錄和檔案。


5

通過cat crontab檢視定時任務的故事,包括shell的位置、路徑、預設郵件發給root賬戶、以及定時任務的格式,5個*的含義及第6列是寫具體的命令。


6

我們可以看看系統裡面的定時任務,有每小時執行的cron.hourly、每日執行的cron.daily、每月執行的cron.monthly、每週執行的cron.weekly.我們通過命令ll cron.daily可以看到裡面有很多可執行檔案,這些都是系統每天自動執行的定時任務。我們可以把自己建立的定時檔案放在系統已有的目錄下,比如每天的定時任務放在cron.daily下面。



7

系統常用的每天執行的定時任務,tmpwatch定時任務會去/tmp、/var/tmp臨時目錄下找超過10天的檔案並刪除,logrotate紀錄檔檔案回滾,預設是一週回滾一次,1個月回滾4次,也就是紀錄檔只儲存1個月,logwatch把當天最敏感的紀錄檔找出來形成一個電子郵件預設發給超級使用者。



IT145.com E-mail:sddin#qq.com