一、Cron定時任務管理器簡介
Cron是一個定時任務管理器,可以在指定的時間或者時間間隔內運行指定的命令或者腳本。其在CentOS 7系統中已經預裝。Cron基於使用時間和日期運行周期性的命令,由常駐守護進程crond觸發執行。Cron的主要用途是進行計劃任務的作業調度,實現定時執行命令和腳本的功能。
在CentOS 7中,cron主要由以下幾個文件組成:
- /etc/crontab:系統cron配置文件
- /etc/cron.d:擴展cron配置文件目錄
- /var/spool/cron:用戶cron配置文件目錄
- /var/log/cron:cron日誌文件目錄
二、Cron基礎語法
Cron文件的基本結構是:分 時 日 月 周 命令。其中分是分鐘數,時是小時數(0到23),日是日期(1到31),月是月份(1到12),周是星期幾(0到6,其中0代表星期天)。
cron支持的時間格式如下:
- Asterisk (*):匹配所有值
- Comma (,):用於分隔多個值
- Hyphen (-):用於指定一個範圍
- Slash (/):用於指定一個間隔時間
- 逗號 (,):用於指定多個數值
使用crontab命令進行編輯及控制,腳本的調度周期為秒、分、時、日、月、周的任意一種或組合形式。
示例:
* * * * * command 0 0 * * * command */10 * * * * command 0 */2 * * * command 30 5 * * 1-5 command
三、使用Cron設置定時任務
1. 執行指定命令
通過編輯crontab文件,可設置要執行的定時任務及執行頻率。首先通過以下命令打開要編輯的.crondab文件:
$ crontab -e
然後添加以下內容:
* * * * * command
其中 * * * * * 代表每分鐘都執行一次command命令
2. 按照時間周期性的執行任務
語法為:`* * * * * command`(分鐘 小時 日 月 周),可以填寫多個時間,表示在指定的時間周期性地運行命令。例如,下面的命令會在每天的5點20分和18點20分運行 /scripts/command.sh:
20 5,18 * * * /scripts/command.sh
3. 每隔一段時間執行任務
如果需要每隔一段時間執行一次任務,則可以使用如下的命令:
*/5 * * * * /scripts/command.sh
以上命令將每五分鐘執行一次 /scripts/command.sh 文件。”*/5″的意思是每隔五分鐘。
4. 運行腳本文件
在crontab中可以執行任意腳本文件,示例如下:
* * * * * /bin/bash /scripts/command.sh
/bin/bash表示使用bash解釋器來執行command.sh腳本。
5. 刪除定時任務
通過以下命令刪除crontab中的指定定時任務:
$ crontab -r
四、Cron常用命令
1. crontab
crontab命令是一個管理cron定時任務的工具。通過它,用戶可以進行cron定時任務的增加、刪除、編輯等操作。
使用方式如下:
- crontab -e:編輯用戶的crontab文件
- crontab -l:顯示當前用戶的crontab文件內容
- crontab -r:刪除當前用戶的crontab文件
2. systemctl
systemctl命令是一個用於管理systemd系統和服務的工具,它可以啟動、停止、重啟、查詢服務狀態等操作。
使用方式如下:
- systemctl status cron.service:查詢cron服務的狀態
- systemctl start cron.service:啟動cron服務
- systemctl stop cron.service:停止cron服務
- systemctl restart cron.service:重啟cron服務
3. service
service命令是一個用於管理系統服務的工具,它可以啟動、停止、重啟、查詢狀態等操作。
使用方式如下:
- service cron status:查詢cron服務的狀態
- service cron start:啟動cron服務
- service cron stop:停止cron服務
- service cron restart:重啟cron服務
總結
以上就是在CentOS 7上設置定時任務的全部介紹。Cron是一個非常強大的定時任務管理器,可以幫助用戶完成很多自動化任務。熟練掌握Cron的使用將會極大地提高用戶的工作效率。
原創文章,作者:WEGTI,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/368929.html