linux下可以通過(guò)配置crontab來(lái)定時(shí)執(zhí)行任務(wù),執(zhí)行體可以是一條系統(tǒng)命令或自己寫(xiě)的一個(gè)腳本,同時(shí)可以指派用戶來(lái)執(zhí)行。配置crontab有兩種方法。
方法1、使用crontab命令,例如添加一個(gè)新的或編輯已有的,使用:
crontab -e
就可以進(jìn)入配置文件。此時(shí)配置crontab的執(zhí)行者是當(dāng)前登入用戶,如果當(dāng)前用戶是root,需要為其他用戶配置,可以使用
crontab -e -u 用戶名或su 用戶名crontab -e
這種方法有一個(gè)缺點(diǎn),就是當(dāng)前系統(tǒng)中配置的crontab不在一個(gè)配置文件中,讓管理員不方便查詢系統(tǒng)到底有多少個(gè)crontab。
方法2、直接在/etc/crontab文件中添加,不過(guò)需要是root身份。打開(kāi)文件,應(yīng)該會(huì)看到類似下面的信息
SHELL=/bin/bashPATH=/sbin:/bin:/usr/sbin:/usr/binMAILTO=rootHOME=/# 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
要添加新的crontab,只需要在文件最后增加即可。注意這里面需要指定用戶名;而方法1中則不需要,如果指定了,它會(huì)認(rèn)為是命令的一部分,從而可能導(dǎo)致crontab執(zhí)行失敗。
如果服務(wù)器都是有root來(lái)管理,建議添加crontab使用方法2,這樣系統(tǒng)中的所有計(jì)劃任務(wù)都在一起,一目了然。
聯(lián)系客服