
時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(2)
(1)at命令
假如我們只是想 要讓特定任務(wù)運行一次,那么,這時候就要用到at監(jiān)控程序了。
設(shè)置at命令很簡單,指示定運行的時間,那么就會在哪個時候運行。at類似打印 進(jìn)程,會把任務(wù)放到/var/spool/at目錄中,到指定時間運行它 。at命令相當(dāng)于另一個shell,運行at time命令時,它發(fā)送一個個命令,可以輸入任意命令或者程序。at now + time命令可以在指示任務(wù)。
假設(shè)處理一個大型數(shù)據(jù)庫,要在別人不用系統(tǒng)時去處理數(shù)據(jù),比如凌晨3點10分。那么我們就應(yīng)該先建立/home/kyle/do_job腳本管理數(shù)據(jù)庫,計劃處理/home/kyle/do_job文件中的結(jié)果。正常方式是這樣啟動下列命令:
# at 2:05 tomorrow
at>/home/kyle/do_job
at> Ctrl+D
AT Time中的時間表示方法
-----------------------------------------------------------------------
時 間 例子 說明
-----------------------------------------------------------------------
Minute??? at now + 5 minutes?? 任務(wù)在5分鐘后運行
Hour????? at now + 1 hour????? 任務(wù)在1小時后運行
Days????? at now + 3 days????? 任務(wù)在3天后運行
Weeks???? at now + 2 weeks???? 任務(wù)在兩周后運行
Fixed???? at midnight??? 任務(wù)在午夜運行
Fixed???? at 10:30pm???? 任務(wù)在晚上10點30分
注意:一定要檢查一下atq的服務(wù)是否啟 動,有些操作系統(tǒng)未必是默認(rèn)啟動的, linux默認(rèn)為不啟動,而ubuntu默認(rèn)為啟動的。檢查是否啟動,用service atd檢查語法,用service atd status檢查atd的狀態(tài),用service atd start啟動atd服務(wù)。
查看at執(zhí)行的具體內(nèi)容:一般位于/var/spool/at目錄下面, 用vi打開,在最后一部分就是你的執(zhí)行程序
(2)crontab
cron是一個linux下 的定時執(zhí)行工具,可以在無需人工干預(yù)的情況下運行作業(yè)。由于Cron 是Linux的內(nèi)置服務(wù),但它不自動起來,可以用以下的方法啟動、關(guān)閉這個服務(wù):
/sbin/service crond start??? //啟動服務(wù)
/sbin/service crond stop???? //關(guān)閉服務(wù)
/sbin/service crond restart? //重啟服務(wù)
/sbin/service crond reload?? //重新載入配置
/sbin/service crond status?? //查看服務(wù)狀態(tài)
你也可以將這個服務(wù)在系統(tǒng)啟 動的時候自動啟動:
在/etc/rc.d/rc.local這個腳本的末尾加上:
/sbin/service crond start
現(xiàn)在Cron這個服務(wù)已經(jīng)在進(jìn)程里面了,我們就可以用這個服務(wù)了,Cron服務(wù)提供以下幾種接口供大家使用:
1、直接用crontab命 令編輯
cron服務(wù)提供 crontab命令來設(shè)定cron服務(wù)的,以下是這個命令的一些參數(shù)與說明:
crontab -u //設(shè)定某個用戶的cron服務(wù),一般root用戶在執(zhí)行這個命令的時候需要此參數(shù)
crontab -l //列出某個用戶cron服務(wù)的詳細(xì)內(nèi)容
crontab -r //刪除某個用戶的cron服務(wù)
crontab -e //編輯某個用戶的cron服務(wù)
比如說root查看自己的cron設(shè)置:crontab -u root -l
再例 如,root想刪除fred的cron設(shè)置:crontab -u fred -r
基本格式 :
* * * * * command
分 時 日 月 周 命令
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標(biāo)識號星期0~6(0表示星期天)
第6列要運行的命令
crontab文件的一些例子:
#每晚的21:30重啟apache。
30 21 * * * /usr/local/etc/rc.d/lighttpd restart
#每月1、10、22日
45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart
#每天早上6點10分
10 6 * * * date
#每兩個小時
0 */2 * * * date
#晚上11點到早上8點之間每兩個小時,早上8點
0 23-7/2,8 * * * date
#每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點
0 11 4 * mon-wed date
#1月份日早上4點
0 4 1 jan * date
關(guān)鍵詞標(biāo)簽:linux
相關(guān)閱讀
熱門文章
安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程
Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法
多種操作系統(tǒng)NTP客戶端配置
Linux操作系統(tǒng)修改IP
人氣排行 Linux下獲取CPUID、硬盤序列號與MAC地址 dmidecode命令查看內(nèi)存型號 linux tc實現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機(jī)、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負(fù)載