99久久国产露脸精品麻豆,欧美日韩精品小说,亚洲免费在线美女视频,国产三级中文字幕,91极品国产情侣高潮对白,国产亚洲一区二区三区不卡片,欧美jizz精品欧美性,久久国产精品久久国产片

Linux定時任務(wù)Crontab命令

袁志蒙 5696次瀏覽

摘要:linux系統(tǒng)則是由 cron (crond) 這個系統(tǒng)服務(wù)來控制的。Linux 系統(tǒng)上面原本就有非常多的計(jì)劃性工作,因此這個系統(tǒng)服務(wù)是默認(rèn)啟動的。另 外, 由于使用者自己也可以設(shè)置計(jì)劃任務(wù),所以, ...

linux系統(tǒng)則是由 cron (crond) 這個系統(tǒng)服務(wù)來控制的。Linux 系統(tǒng)上面原本就有非常多的計(jì)劃性工作,因此這個系統(tǒng)服務(wù)是默認(rèn)啟動的。另 外, 由于使用者自己也可以設(shè)置計(jì)劃任務(wù),所以, Linux 系統(tǒng)也提供了使用者控制計(jì)劃任務(wù)的crontab命令。

一.linux任務(wù)調(diào)度的工作主要分為以下兩類:

1.系統(tǒng)執(zhí)行的工作:系統(tǒng)周期性所要執(zhí)行的工作,如備份系統(tǒng)數(shù)據(jù)、清理緩存

2.個人執(zhí)行的工作:某個用戶定期要做的工作,例如每隔10分鐘檢查郵件服務(wù)器是否有新信,這些工作可由每個用戶自行設(shè)置。

在/etc目錄下有一個crontab文件,這個就是系統(tǒng)任務(wù)調(diào)度的配置文件:

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed

第一行SHELL變量指定了系統(tǒng)要使用哪個shell,這里是bash,第二行PATH變量指定了系統(tǒng)執(zhí)行 命令的路徑,第三行MAILTO變量指定了crond的任務(wù)執(zhí)行信息將通過電子郵件發(fā)送給root用戶,如果MAILTO變量的值為空,則表示不發(fā)送任務(wù) 執(zhí)行信息給用戶,第四行的HOME變量指定了在執(zhí)行命令或者腳本時使用的主目錄.


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

使用者權(quán)限文件:

文件:

/etc/cron.deny

說明:

該文件中所列用戶不允許使用crontab命令

文件:

/etc/cron.allow

說明:

該文件中所列用戶允許使用crontab命令

文件:

/var/spool/cron/

說明:

所有用戶crontab文件存放的目錄,以用戶名命名

crontab文件的含義:

用戶所建立的crontab文件中,每一行都代表一項(xiàng)任務(wù),每行的每個字段代表一項(xiàng)設(shè)置,它的格式共分為六個字段,前五段是時間設(shè)定段,第六段是要執(zhí)行的命令段,格式如下:

minute hour day month week command

其中:

minute: 表示分鐘,可以是從0到59之間的任何整數(shù)。

hour:表示小時,可以是從0到23之間的任何整數(shù)。

day:表示日期,可以是從1到31之間的任何整數(shù)。

month:表示月份,可以是從1到12之間的任何整數(shù)。

week:表示星期幾,可以是從0到7之間的任何整數(shù),這里的0或7代表星期日。

command:要執(zhí)行的命令,可以是系統(tǒng)命令,也可以是自己編寫的腳本文件。

二.crontab命令選項(xiàng):

    - u 指定一個用戶,

    - l 列出某個用戶的任務(wù)計(jì)劃,

    - r 刪除某個用戶的任務(wù),

    - e 編輯某個用戶的任務(wù)

在末尾添加:*/1 * * * * date > /tmp/log.txt ,表示將日志輸出到這個文件中

在末尾添加:*/1 * * * * date > /dev/null 2>&1 可以理解為現(xiàn)在標(biāo)準(zhǔn)輸出直接輸入到 /dev/null 中,而2>&1是將標(biāo)準(zhǔn)錯誤重定向到標(biāo)準(zhǔn)輸出,所以當(dāng)程序產(chǎn)生錯誤的時候,相當(dāng)于錯誤流向左邊,而左邊依舊是輸入到/dev/null中

三、cron文件語法:

分     小時      日       月       星期      命令

0-59   0-23   1-31  1-12     0-6     command     (取值范圍,0表示周日一般一行對應(yīng)一個任務(wù))

記住幾個特殊符號的含義:

"*"代表取值范圍內(nèi)的數(shù)字,

"/"代表"每",

"-"代表從某個數(shù)字到某個數(shù)字,

","分開幾個離散的數(shù)字

舉幾個簡單例子:

5       *       *       *      *     ls              //指定每小時的第5分鐘執(zhí)行一次ls命令

30     5       *       *      *     ls              //指定每天的 5:30 執(zhí)行l(wèi)s命令

30     7       8       *      *      ls             //指定每月8號的7:30分執(zhí)行l(wèi)s命令

30     5       8       6      *      ls             //指定每年的6月8日5:30執(zhí)行l(wèi)s命令

30     6       *       *      0      ls             //指定每星期日的6:30執(zhí)行l(wèi)s命令[注:0表示星期天,1表示星期1,以此類推,也可以用英文來表示,sun表示星期天,mon表示星期一等。]

30     3   10,20     *      *      ls             //每月10號及20號的3:30執(zhí)行l(wèi)s命令[注:”,”用來連接多個不連續(xù)的時段]

25     8-11  *        *     *      ls             //每天8-11點(diǎn)的第25分鐘執(zhí)行l(wèi)s命令[注:”-”用來連接連續(xù)的時段]

*/15   *      *        *     *      ls            //每15分鐘執(zhí)行一次ls命令 [即每個小時的第0 15 30 45 60分鐘執(zhí)行l(wèi)s命令 ]

30     6    */10      *     *      ls            //每個月中,每隔10天6:30執(zhí)行一次ls命令[即每月的1、11、21、31日是的6:30執(zhí)行一次ls命令。 ]

50    7       *         *     *     root run-parts /etc/cron.daily   //每天7:50以root 身份執(zhí)行/etc/cron.daily目錄中的所有可執(zhí)行文件[ 注:run-parts參數(shù)表示,執(zhí)行后面目錄中的所有可執(zhí)行文件。 ]

四、crontab在YZMPHP框架中的使用例子:

sudo crontab -e
* * * * * /usr/local/bin/php /data1/yzmcms/yzm task run > /dev/null 2>&1

上例子表示Linux每分鐘執(zhí)行一個YZMPHP的命令,更多YZMPHP使用方式見:www.yzmcms.com

隨機(jī)內(nèi)容

表情

共1條評論
  • 網(wǎng)友評論:

    不錯

    2019-01-08 16:45:40 回復(fù)

    點(diǎn)擊加載