Linux下的定時任務

2021-10-22 09:26:53 字數 2288 閱讀 2490

安裝crontab

yum install crontabs
啟動crontab

service crond start
關閉crontab

service crond stop
重啟crontab

service crond restart
檢視crontab狀態

service crond status
使用者所建立的crontab檔案中,每一行都代表一項任務,每行的每個字段代表一項設定,它的格式共分為六個字段,前五段是時間設定段,第六段是要執行的命令段,格式如下:

minute hour day month week command
引數分析:

字段含義

minute

表示分鐘,可以是從0到59之間的任何整數

hour

表示小時,可以是從0到23之間的任何整數

day表示日期,可以是從1到31之間的任何整數

month

表示月份,可以是從1到12之間的任何整數

week

表示星期幾,可以是從0到7之間的任何整數,這裡的0或7代表星期日

command

要執行的命令,可以是系統命令,也可以是自己編寫的指令碼檔案

在以上各個欄位中,還可以使用以下特殊字元:

字元含義

*代表所有可能的值,例如month欄位如果是星號,則表示在滿足其它欄位的制約條件後每月都執行該命令操作。

,可以用逗號隔開的值指定乙個列表範圍,例如,「1,2,5,7,8,9」

-可以用整數之間的中槓表示乙個整數範圍,例如「2-6」表示「2,3,4,5,6」

/可以用正斜線指定時間的間隔頻率,例如「0-23/2」表示每兩小時執行一次。同時正斜線可以和星號一起使用,例如*/10,如果用在minute欄位,表示每十分鐘執行一次

通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell script指令碼。時間間隔的單位可以是分鐘、小時、日、月、周及以上的任意組合。這個命令非常設合週期性的日誌分析或資料備份等工作。

語法格式如下

crontab

[-u user]

file

crontab

[-u user]

[ -e | -l | -r ]

引數分析:

引數解析

-u user

用來設定某個使用者的crontab服務,例如,「-u ixdba」表示設定ixdba使用者的crontab服務,此引數一般有root使用者來執行

file

file是命令檔案的名字,表示將file做為crontab的任務列表檔案並載入crontab。如果在命令列中沒有指定這個檔案,crontab命令將接受標準輸入(鍵盤)上鍵入的命令,並將它們載入crontab

-e編輯某個使用者的crontab檔案內容。如果不指定使用者,則表示編輯當前使用者的crontab檔案

-l顯示某個使用者的crontab檔案內容,如果不指定使用者,則表示顯示當前使用者的crontab檔案內容

-r從/var/spool/cron目錄中刪除某個使用者的crontab檔案,如果不指定使用者,則預設刪除當前使用者的crontab檔案

-i在刪除使用者的crontab檔案時給確認提示

每1分鐘執行一次command

* * * * * command
每小時的第3和第15分鐘執行

3,15 * * * * command
在上午8點到11點的第3和第15分鐘執行

3,15 8-11 * * * command
每隔兩天的上午8點到11點的第3和第15分鐘執行

3,15 8-11 */2 * * command
每個星期一的上午8點到11點的第3和第15分鐘執行

3,15 8-11 * * 1 command
command 可以為執行某個 shell 指令碼(全路徑),也可以直接為 linux 命令(開啟或重啟某些應用程式)等

Linux下的定時任務

在有了郵件的告警功能後,下一步要做的就是做乙個定時任務,讓這個任務按週期執行,這樣就能周期性地收到告警資訊了。在做定時任務之前,先檢查一下當前的系統時間 date y m d t 和硬體時鐘時間 hwclock root localhost test date y m d t 2013 07 01 ...

Linux下的定時任務

在有了郵件的告警功能後,下一步要做的就是做乙個定時任務,讓這個任務按週期執行,這樣就能周期性地收到告警資訊了。在做定時任務之前,先檢查一下當前的系統時間 date y m d t 和硬體時鐘時間 hwclock root localhost test date y m d t 2013 07 01 ...

linux定時任務 at定時任務

at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...