萬盛學電腦網

 萬盛學電腦網 >> Windows 10資訊 >> linux(centos)中的cron計劃任務配置方法[詳細]

linux(centos)中的cron計劃任務配置方法[詳細]

class="area">

1. crontab命令選項


復制代碼代碼如下:
#crontab -u <-l, -r, -e>

-u指定一個用戶
-l列出某個用戶的任務計劃
-r刪除某個用戶的任務
-e編輯某個用戶的任務

2. cron文件語法與寫法

可用crontab -e命令來編輯,編輯的是/var/spool/cron下對應用戶的cron文件,也可以直接修改/etc/crontab文件。具體格式如下:

復制代碼代碼如下:
Minute Hour Day Month Week command 
分鐘 小時 天 月 星期 命令 
0-59 0-23 1-31 1-12 0-6 command

每個字段代表的含義如下: 

復制代碼代碼如下:
Minute 每個小時的第幾分鐘執行該任務 
Hour 每天的第幾個小時執行該任務 
Day 每月的第幾天執行該任務 
Month 每年的第幾個月執行該任務 
DayOfWeek 每周的第幾天執行該任務,0表示周日
Command 指定要執行的程序 、腳本或命令

在這些字段裡,除了“Command”是必須指定的字段以外,其它字段皆為可選。對於不指定的字段,要用“*”來填補其位置。

3. 幾個特殊符號的含義

“*”代表取值范圍內的數字, 
“/”代表”每”, 
“-”代表從某個數字到某個數字, 
“,”分開幾個離散的數字

4. 關於cron配置文件/etc/crontab

cron 的主配置文件是 /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 

前四行是用來配置 cron 任務運行環境的變量:

SHELL 變量的值指定shell 環境(此處默認為 bash shell);PATH 變量定義用來執行命令的程序路徑;cron 任務的輸出被郵寄給 MAILTO 變量定義的用戶名,如果 MAILTO 變量被定義為空白字符串(MAILTO=""),電子郵件就不會被寄出;HOME 變量可以用來設置在執行命令或腳本時使用的主目錄。

如在 /etc/crontab 文件中run-parts部分所示,它使用 run-parts 腳本來執行存在於 /etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目錄中的腳本,這些腳本被相應地按照預設時間在每小時、每日、每周、或每月執行。這些目錄中的文件應該是 shell 腳本,並且具有可執行權限(chmod +x filename)。

如果某 cron 任務需要根據調度來執行,而不是每小時、每日、每周、或每月地執行,它可以被添加到/etc/cron.d目錄中。該目錄中的所有文件使用和 /etc/crontab 中一樣的語法。

每次編輯完某個用戶的cron設置後,cron自動在/var/spool/cron下生成一個與此用戶同名的文件,此用戶的cron信息都記錄在這個文件中,這個文件是不可以直接編輯的,只可以用crontab -e 來編輯。cron啟動後每過一份鐘讀一次這個文件,檢查是否要執行裡面的命令。因此此文件修改後不需要重新啟動cron服務。

5. 常見c

copyright © 萬盛學電腦網 all rights reserved