主頁 > 知識庫 > Linux  crontab 命令的使用

Linux  crontab 命令的使用

熱門標簽:ai電話機器人營銷 信貸電銷機器人系統(tǒng) 鸚鵡螺號航海地圖標注時間 江蘇自動外呼系統(tǒng)一般多少錢 比較穩(wěn)定的外呼系統(tǒng) 400 電話 申請費用 山東電信外呼系統(tǒng)靠譜嗎 云南云電銷機器人招商 長沙回撥外呼系統(tǒng)

1.命令簡介

contab(cron table) 命令被用管理用戶的需要周期性執(zhí)行的任務,與 Windows 下的計劃任務類似,當安裝完操作系統(tǒng)后,默認會安裝此服務工具,并且會自動啟動 crond 進程,crond 進程每分鐘會檢查是否有要執(zhí)行的任務,如果有則執(zhí)行該任務。

Linux 下的任務調度分為兩類,系統(tǒng)任務調度和用戶任務調度。

系統(tǒng)任務調度:系統(tǒng)周期性所要執(zhí)行的工作,比如寫緩存數(shù)據(jù)到硬盤、日志清理等。/etc/crontab 文件是系統(tǒng)任務調度的配置文件。

用戶任務調度:用戶定期要執(zhí)行的工作,比如用戶數(shù)據(jù)備份、定時郵件提醒等。用戶可以使用 crontab 工具來定制自己的計劃任務。所有用戶定義的 crontab 文件都被保存在 /var/spool/cron 目錄中,其文件名與用戶名一致。

系統(tǒng)管理員可以通過/etc/cron.deny 和 /etc/cron.allow 這兩個文件來禁止或允許用戶擁有自己的 crontab 文件。

2.命令格式

crontab [-u USER] FILE
crontab [-u USER] [-l | -r | -e] [-i] [-s]
crontab -n [ HOSTNAME ]
crontab -c

3.選項說明

-u
	指定要設置定時任務的用戶名
-l
	列出當前的定時任務
-r
	刪除定時任務
-e
	編輯用戶的定時任務。任務保存在 /var/spool/cron 目錄下與用戶名同名的文件中
-i
	在刪除定時任務前詢問用戶是否確定刪除
-s
	在進行編輯/替換之前,將當前的 SELinux 安全上下文字符串作為 MLS_LEVEL 附加到 crontab 文件
-n [HOSTNAME]
	此選項只有當 cron(8) 使用 -c 選項啟動以支持集群環(huán)境時才使用,用于指定集群中哪個主機執(zhí)行定時 crontab 文件中的定時任務。如果省略了主機名,則使用 gethostname(2) 返回的本地主機名
-c
	此選項只有當 cron(8) 使用 -c 選項啟動以支持集群環(huán)境時才使用,用于查詢集群中當前哪個主機執(zhí)行定時 crontab 文件中的定時任務

4.用戶配置文件

crontab 文件保存了用戶的定時任務,以特定格式保存在 /var/spool/cron 目錄下與用戶名同名的文件中。例如如果是 root 用戶,那么添加任務時,會在該路徑下有一個 root 文件。Linux 的 cron 服務會每隔一分鐘去讀取一次 /var/spool/cron 目錄下面所有的內容。

crontab 文件每一行代表一項任務,每項任務分為六個字段,前五個字段是時間字段,第六個字段是要執(zhí)行的命令,格式如下:

minute hour day month week command

minute 分鐘,取值范圍 0 到 59;
hour 小時,取值范圍 0 到 23;
day 日期,取值范圍 1 到 31;
month 月份,取值范圍 1 到 12,或 jan,feb,mar,apr…;
week 星期,取值范圍 0 到 7,或 sun,mon,tue,wed,thu,fri,sat。注意 0 和 7 均代表星期日;
command 要執(zhí)行的命令,可以是系統(tǒng)命令,也可以是自己編寫的腳本文件;

在以上各個時間字段中,還可以使用以下特殊字符:

* 表示所有可能的值,例如 minute 是 *,表示每分鐘都執(zhí)行命令
, 可以用逗號隔開的值指定一個列表,例如,1,2,5,7,8,9
- 可以用整數(shù)之間的橫杠表示一個范圍,例如 2-6 表示 2,3,4,5,6
/ 可以用斜杠指定時間的間隔頻率,例如 minute 為 */2 表示每兩分鐘執(zhí)行一次命令

注意,crontab 文件注釋符號為 #。

5.系統(tǒng)配置文件

除了用戶的 crontab 文件,與定時任務相關的系統(tǒng)配置文件有:

/etc/crontab		系統(tǒng)定時任務配置文件
/etc/cron.d			自動定期需要做的任務
/etc/cron.hourly	每小時執(zhí)行一次的任務
/etc/cron.daily		每天執(zhí)行一次的任務
/etc/cron.weekly	每周執(zhí)行一次的任務
/etc/cron.monthly	每月執(zhí)行一次的任務
/etc/cron.allow  	該文件中所列用戶允許執(zhí)行定時任務
/etc/cron.deny  	該文件中所列用戶不允許執(zhí)行定時任務
/var/log/cron		crontab 的日志文件

Linux 的 cron 服務會每隔一分鐘去讀取一次 /etc/crontab 文件和 /etc/cron.d 目錄下面所有的內容。/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 下的任務也會間接按照相應的周期被調用。

6.常用示例

(1)添加定時任務。

crontab -e
* * * * * command			# 每分鐘執(zhí)行一次 command
3,15 * * * * command		# 每小時的第 3 和第 15 分鐘執(zhí)行
3,15 8-11 * * * command		# 上午 8 點到 11點每小時第 3 和第 15 分鐘執(zhí)行
3,15 8-11 * * 1 command		# 每個星期一的上午 8 點到 11 點的第 3 和第 15 分鐘執(zhí)行
3,15 8-11 1 * * command		# 每個月一號上午 8 點到 11 點的第 3 和第 15 分鐘執(zhí)行
3,15 8-11 1 1 * command		# 每年一月一號上午 8 點到 11 點的第 3 和第 15 分鐘執(zhí)行
0 */2 * * * /sbin/service httpd restart	# 每隔兩個小時在第 0 分時候重啟一次 httpd

(2)查看定時任務。

crontab -l

(3)刪除定時任務,即清除 /var/spool/cron 目錄下 crontab 文件。危險動作,請注意備份。

crontab -r

(4)將指定的 crontab 文件還原到 /var/spool/cron 目錄下。

crontab FILE

以上就是Linux crontab 命令的使用的詳細內容,更多關于Linux crontab 命令的資料請關注腳本之家其它相關文章!

標簽:烏海 嘉興 拉薩 運城 衡陽 澳門 亳州 齊齊哈爾

巨人網(wǎng)絡通訊聲明:本文標題《Linux  crontab 命令的使用》,本文關鍵詞  Linux,amp,nbsp,crontab,命令,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Linux  crontab 命令的使用》相關的同類信息!
  • 本頁收集關于Linux  crontab 命令的使用的相關信息資訊供網(wǎng)民參考!
  • 推薦文章