怎么在Linux中定時(shí)運(yùn)行腳本?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
在吳川等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、做網(wǎng)站、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站開(kāi)發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計(jì),營(yíng)銷(xiāo)型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站制作,吳川網(wǎng)站建設(shè)費(fèi)用合理。1.安裝crontab
[root@CentOS ~]# yum install vixie-cron [root@CentOS ~]# yum install crontabs
vixie-cron軟件包是cron的主程序;
crontabs軟件包是用來(lái)安裝、卸裝、或列舉用來(lái)驅(qū)動(dòng) cron 守護(hù)進(jìn)程的表格的程序。
2.開(kāi)啟crontab服務(wù)
service crond start //啟動(dòng)服務(wù)
用以下的方法啟動(dòng)、關(guān)閉這個(gè)cron服務(wù):
service crond start //啟動(dòng)服務(wù)
service crond stop //關(guān)閉服務(wù)
service crond restart //重啟服務(wù)
service crond reload //重新載入配置
查看crontab服務(wù)狀態(tài):service crond status
手動(dòng)啟動(dòng)crontab服務(wù):service crond start
查看crontab服務(wù)是否已設(shè)置為開(kāi)機(jī)啟動(dòng),執(zhí)行命令:ntsysv
加入開(kāi)機(jī)自動(dòng)啟動(dòng):
chkconfig –level 35 crond on
另外順帶介紹下ntsysv和chkconfig命令:
關(guān)于ntsysv命令是類(lèi)圖形界面管理模式來(lái)設(shè)置開(kāi)機(jī)啟動(dòng),需要先安裝才可以使用,yum install -y ntsysv安裝好之后只需要運(yùn)行一個(gè)ntsysv即可出現(xiàn)一個(gè)類(lèi)似圖像化的管理界面。
上下鍵:可以在中間的方框當(dāng)中,在各個(gè)服務(wù)之間移動(dòng);
空格鍵:可以用來(lái)選擇你所需要的服務(wù),[*]表示開(kāi)起啟動(dòng);
tab鍵:可以在方框、OK、Cancel之間移動(dòng);
[F1]鍵:可以顯示該服務(wù)的說(shuō)明。
關(guān)于chkconfig命令行的形式設(shè)置是否開(kāi)機(jī)自啟動(dòng)或者查詢某個(gè)服務(wù)6個(gè)開(kāi)機(jī)級(jí)別的運(yùn)行情況。
設(shè)置開(kāi)機(jī)自動(dòng)啟動(dòng)crond服務(wù):
[root@CentOS ~]# chkconfig crond on
查看各個(gè)開(kāi)機(jī)級(jí)別的crond服務(wù)運(yùn)行情況
[root@CentOS ~]# chkconfig –list crond
crond 0:關(guān)閉 1:關(guān)閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關(guān)閉
可以看到2、3、4、5級(jí)別開(kāi)機(jī)會(huì)自動(dòng)啟動(dòng)crond服務(wù)
取消開(kāi)機(jī)自動(dòng)啟動(dòng)crond服務(wù):
[root@CentOS ~]# chkconfig crond off
3.設(shè)置需要執(zhí)行的腳本
新增調(diào)度任務(wù)可用兩種方法:
1)、在命令行輸入: crontab -e 然后添加相應(yīng)的任務(wù),wq存盤(pán)退出。
2)、直接編輯/etc/crontab 文件,即vi /etc/crontab,添加相應(yīng)的任務(wù)。
crontab -e配置是針對(duì)某個(gè)用戶的,而編輯/etc/crontab是針對(duì)系統(tǒng)的任務(wù)
查看調(diào)度任務(wù)
crontab -l //列出當(dāng)前的所有調(diào)度任務(wù)
crontab -l -u jp //列出用戶jp的所有調(diào)度任務(wù)
刪除任務(wù)調(diào)度工作
crontab -r //刪除所有任務(wù)調(diào)度工作
直接編輯 vim /etc/crontab ,默認(rèn)的文件形式如下:
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
這個(gè)文本解釋的已經(jīng)比較直觀了,其中
星號(hào)(*):代表所有可能的值,例如month字段如果是星號(hào),則表示在滿足其它字段的制約條件后每月都執(zhí)行該命令操作。
逗號(hào)(,):可以用逗號(hào)隔開(kāi)的值指定一個(gè)列表范圍,例如,“1,2,5,7,8,9”
中杠(-):可以用整數(shù)之間的中杠表示一個(gè)整數(shù)范圍,例如“2-6”表示“2,3,4,5,6”
正斜線(/):可以用正斜線指定時(shí)間的間隔頻率,例如“0-23/2”表示每?jī)尚r(shí)執(zhí)行一次。同時(shí)正斜線可以和星號(hào)一起使用,例如*/10,如果用在minute字段,表示每十分鐘執(zhí)行一次。
這里舉幾個(gè)例子,基本涵蓋了常見(jiàn)的一些情況:
實(shí)例1
5 * * * * ls 指定每小時(shí)的第5分鐘執(zhí)行一次ls命令 30 5 * * * ls 指定每天的 5:30 執(zhí)行l(wèi)s命令 30 7 8 * * ls 指定每月8號(hào)的7:30分執(zhí)行l(wèi)s命令 30 5 8 6 * ls 指定每年的6月8日5: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命令 30 3 10,20 * * ls 每月10號(hào)及20號(hào)的3:30執(zhí)行l(wèi)s命令 25 8-11 * * * ls 每天8-11點(diǎn)的第25分鐘執(zhí)行l(wèi)s命令 */15 * * * * ls 每15分鐘執(zhí)行一次ls命令 30 6 */10 * * ls 每個(gè)月中,每隔10天6:30執(zhí)行一次ls命令 22 4 * * * root run-parts /etc/cron.daily #每天4:22以root身份執(zhí)行/etc/cron.daily目錄中的所有可執(zhí)行文件,run-parts參數(shù)表示,執(zhí)行后面目錄中的所有可執(zhí)行文件。
實(shí)例2
#每晚的21:30 重啟apache 30 21 * * * /usr/local/etc/rc.d/lighttpd restart #每月1、10、22日的4 : 45重啟apache 45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart #每周六、周日的1 : 10重啟apache 10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart #每天18 : 00至23 : 00之間每隔30分鐘重啟apache 0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart #每星期六的11 : 00 pm重啟apache 0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart #晚上11點(diǎn)到早上7點(diǎn)之間,每隔一小時(shí)重啟apache 0 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart #每一小時(shí)重啟apache 0 */1 * * * /usr/local/etc/rc.d/lighttpd restart #每月的4號(hào)與每周一到周三的11點(diǎn)重啟apache 0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart #一月一號(hào)的4點(diǎn)重啟apache 0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart #每半小時(shí)同步一下時(shí)間 0/30 * * * * /usr/sbin/ntpdate 210.72.145.44
注意
* *1 * * * 命令表示是每小時(shí)之內(nèi)的每一分鐘都執(zhí)行。
必須指定在每個(gè)小時(shí)的第幾分鐘執(zhí)行,也就是說(shuō)第一個(gè)*號(hào)必須改成一個(gè)數(shù)值。
因?yàn)?號(hào)表示的就是每一分鐘。
另外小時(shí)位的/1和沒(méi)有區(qū)別,都是每小時(shí)一次。
如果是設(shè)置*/2,實(shí)際上是能被2整除的小時(shí)數(shù)而不是從定時(shí)設(shè)置開(kāi)始2小時(shí)后執(zhí)行,比如9點(diǎn)設(shè)的到10點(diǎn)就會(huì)執(zhí)行。
最后可能會(huì)遇到下面這個(gè)問(wèn)題
root用戶下 輸入 crontab -l 顯示
no crontab for root 例如:
[root@CentOS ~]# crontab -l
no crontab for root
這個(gè)問(wèn)題非常簡(jiǎn)單,同樣在 root 用戶下輸入 crontab -e
按 Esc 按: wq 回車(chē)
在輸入 crontab -l 就沒(méi)有問(wèn)題了
Linux是一種免費(fèi)使用和自由傳播的類(lèi)UNIX操作系統(tǒng),是一個(gè)基于POSIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng),使用Linux能運(yùn)行主要的Unix工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。
看完上述內(nèi)容,你們掌握怎么在Linux中定時(shí)運(yùn)行腳本的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道,感謝各位的閱讀!
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
當(dāng)前名稱:怎么在Linux中定時(shí)運(yùn)行腳本-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://jinyejixie.com/article32/dhogpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、電子商務(wù)、Google、品牌網(wǎng)站建設(shè)、小程序開(kāi)發(fā)、App開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容
全網(wǎng)營(yíng)銷(xiāo)推廣知識(shí)