crontab命令參數
功能說明
在Linux中所有的命令都可以通過 --help顯示命令的參數
- 作用:編輯計劃任務,讓系統每過多久執行1次命令。每行一條命令,一個計劃任務可以有多條命令。
語法格式
crontab [參數] | 參數說明 |
---|---|
-l | 顯示已經存在的計劃任務 |
-e | 編輯現有的計劃任務,調用vim來編輯 |
-r | 刪除任務 |
操作演示
- 顯示當前root用戶的定時任務
- 進入任務編輯狀態
執行結果
定時任務的配置
定時任務的說明
- 每行一個定時任務
- 時間格式由6個參數組成:分 時 日 月 周 命令
格式說明
解釋以下配置的含義
* * * * * command
每分鐘執行一次
30 21 * * * command
每天的21點30分,執行1次
3,15 * * * * command
每小時的第3分鐘和第15分鐘執行1次
5,10 8-11 * * * command
每天的8點到11點的第5分鐘和第10鍾執行
*/2 * * * * command
每過2分鐘執行1次
crontab案例
案例需求
每隔一分鐘,讓Linux輸出當前的系統時間到/root/mydate.log文件中。
操作步驟
-
輸入crontab -e後,會啓動vi編輯器,來編寫新的定時任務,一行寫一個定時任務。
* * * * * date >> /root/mydate.log
-
保存並退出vi編輯器後,定時任務立刻生效。
-
等幾分鐘,顯示mydate.log文件的內容
-
最後刪除當前的定時任務
執行結果
- 編輯後顯示的命令行
- 過幾分鐘查看mydate.log的文件內容
系統服務的管理
- 定時器服務的管理
- 設置後臺服務的自啓動
定時服務的管理
crontab如果安裝到Linux系統上,默認是開啓服務的,會消耗一定的資源。類似於Windows下的服務:
定時服務管理的命令
crond服務管理命令 | 說明 |
---|---|
systemctl start crond | 開啓服務 |
systemctl stop crond | 停止服務 |
systemctl status crond | 顯示服務狀態 |
systemctl restart crond | 重啓服務:相當於停止再開啓 |
systemctl reload crond | 重新加載服務:重載加載新的配置文件 |
操作演示
- 查看定時器服務的狀態,默認處理開啓狀態
- 關閉定時服務後,查看服務的狀態
- 重啓服務定時服務,查看服務的狀態
執行結果
設置後臺服務的自啓動配置
類似於Windows下服務的自啓動
語法格式
命令 | 說明 |
---|---|
systemctl list-units *.service | 顯示當前已經激活的所有服務 |
systemctl enable 服務名 | 設置服務爲開機自啓動 |
systemctl disable 服務名 | 關閉服務開機自啓動 |
操作演示
- 查看某項指定的服務是否開啓,如crond.service
- 禁止crond服務開機自啓動;重新啓動linux;查看crond服務是否已經開啓
- 再次將crond服務設置爲開機自啓動;重新啓動linux;查看crond服務是否已經加載
執行效果