Linux Crontab 定時任務

2021-08-27 10:17:15 字數 2465 閱讀 4337

一、crontab介紹

crontab命令的功能是在一定的時間間隔排程一些命令的執行。

1.1 /etc/crontab檔案

在/etc目錄下有乙個crontab檔案,這裡存放有系統執行的一些排程程式。每個使用者可以建立自己的排程crontab(在/var/spool/cron目錄下)。

以下是我本機上的crontab檔案,

[root@localhost etc]# cat /etc/crontab

shell=/bin/bash

path=/sbin:/bin:/usr/sbin:/usr/bin

mailto=root

home=/

# run-parts

01 * * * * root run-parts /etc/cron.hourly

02 4 * * * root run-parts /etc/cron.daily

22 4 * * 0 root run-parts /etc/cron.weekly

42 4 1 * * root run-parts /etc/cron.monthly

二、crontab使用說明

2.1 crontab基本語法

usage: crontab [-u user] file

crontab [-u user] [ -e | -l | -r ]

(default operation is replace, per 1003.2)

-e (edit user's crontab)

-l (list user's crontab)

-r (delete user's crontab)

-i (prompt before deleting user's crontab)

-s (selinux context)

其中,file是命令檔案的名字。如果在命令列中指定了這個檔案,那麼執行crontab命令,則將這個檔案拷貝到crontabs目錄下;如果在命令列中沒有制定這個檔案,crontab命令將接受標準輸入(鍵盤)上鍵入的命令,並將他們也存放在crontab目錄下。

2.2 crontab 格式說明

我們可以用crontab -e 新增要執行的命令。

新增的命令必須以如下格式:

* * * * * /需執行命令的路徑

前五個字段可以取整數值,指定何時開始工作,第六個域是字串,即命令字段,其中包括了crontab排程執行的命令。 各個字段之間用spaces和tabs分割。

前5個字段分別表示:

分鐘:0-59

小時:1-23

日期:1-31

月份:1-12

星期:0-6(0表示週日)

還可以用一些特殊符號:

*: 表示任何時刻

,: 表示分割

-:表示乙個段,如第二端裡: 1-5,就表示1到5點

/n : 表示每個n的單位執行一次,如第二段裡,*/1, 就表示每隔1個小時執行一次命令。也可以寫成1-23/1.

一些示例:

00 8,12,16 * * * /test/command.sh

30 2 * * * /test/command.sh

10 8,12,16 * * * /test/command.sh

10 8,12,16 * * * /test/command.sh

10 8,12,16 * * * /test/command.sh

43 21 * * * 21:43 執行

15 05 * * *    05:15 執行

0 17 * * * 17:00 執行

0 17 * * 1 每週一的 17:00 執行

0,10 17 * * 0,2,3 每週日,周二,週三的 17:00和 17:10 執行

0-10 17 1 * * 毎月1日從 17:00到17:10 毎隔1分鐘 執行

0 0 1,15 * 1 毎月1日和 15日和周一的 0:00 執行

42 4 1 * *     毎月1日的 4:42分 執行

0 21 * * 1-6   周一到週六 21:00 執行

0,10,20,30,40,50 * * * * 每隔10分 執行

*/10 * * * *        每隔10分 執行

* 1 * * *         從1:0到1:59 每隔1分鐘 執行

0 1 * * *         1:00 執行

0 */1 * * *        毎時0分 每隔1小時 執行

0 * * * *         毎時0分 每隔1小時 執行

2 8-20/3 * * *      8:02,11:02,14:02,17:02,20:02 執行

30 5 1,15 * *       1日和15日的5:30 執行

linux crontab 定時任務

通過crontab 命令,我們可以在固定的間隔時間執行指定的系統指令或 shell script指令碼。時間間隔的單位可以是分鐘 小時 日 月 周及以上的任意組合。這個命令非常適合週期性的日誌分析或資料備份等工作。命令格式 crontab e l 例如 每隔15分鐘 0,15,30,45 bin e...

Linux Crontab 定時任務

crontab檔案 bash vat command not found hadoop master1 etc cat crontab shell bin bash path sbin bin usr sbin usr bin mailto root home for details see man...

Linux Crontab 定時任務

cron是乙個linux下的定時執行工具,可以在無需人工干預的情況下執行作業。由於cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動 關閉這個服務 sbin service crond start 啟動服務 sbin service crond stop 關閉服務 sbin se...