1. linux設(shè)置定時(shí)任務(wù)每小時(shí)
linux定時(shí)任務(wù)使用crond服務(wù)實(shí)現(xiàn)
通過crontab 命令,我們可以在固定的間隔時(shí)間執(zhí)行指定的系統(tǒng)指令或 shell script腳本。時(shí)間間隔的單位可以是分鐘、小時(shí)、日、月、周及以上的任意組合。這個(gè)命令非常設(shè)合周期性的日志分析或數(shù)據(jù)備份等工作
配置文件路徑為/etc/crontab
用戶所建立的crontab文件中,每一行都代表一項(xiàng)任務(wù),每行的每個(gè)字段代表一項(xiàng)設(shè)置,它的格式共分為六個(gè)字段,前五段是時(shí)間設(shè)定段,第六段是要執(zhí)行的命令段,格式如下:
minute hour day month week command
其中:
minute: 表示分鐘,可以是從0到59之間的任何整數(shù)。
hour:表示小時(shí),可以是從0到23之間的任何整數(shù)。
day:表示日期,可以是從1到31之間的任何整數(shù)。
month:表示月份,可以是從1到12之間的任何整數(shù)。
week:表示星期幾,可以是從0到7之間的任何整數(shù),這里的0或7代表星期日。
command:要執(zhí)行的命令,可以是系統(tǒng)命令,也可以是自己編寫的腳本文件。
在以上各個(gè)字段中,還可以使用以下特殊字符:
星號(hào)(*):代表所有可能的值,例如month字段如果是星號(hào),則表示在滿足其它字段的制約條件后每月都執(zhí)行該命令操作。
逗號(hào)(,):可以用逗號(hào)隔開的值指定一個(gè)列表范圍,例如,“1,2,5,7,8,9”
中杠(-):可以用整數(shù)之間的中杠表示一個(gè)整數(shù)范圍,例如“2-6”表示“2,3,4,5,6”
正斜線(/):可以用正斜線指定時(shí)間的間隔頻率,例如“0-23/2”表示每兩小時(shí)執(zhí)行一次。同時(shí)正斜線可以和星號(hào)一起使用,例如*/10,如果用在minute字段,表示每十分鐘執(zhí)行一次
2. linux定時(shí)任務(wù)每十分鐘
LINUX服務(wù)器定時(shí)重啟的具體命令如下:crontab -e 0
1 * * * /sbin/reboot ( 0 1 * * *表示每天凌晨一點(diǎn)重啟.)0 1 * * 1/sbin/reboot (0 1 * * 1表示每周一凌晨一點(diǎn)重啟30
2 * * * /home/bin/oraclebackup.sh (備份數(shù)據(jù)庫和站點(diǎn)目錄)30
3 * * * /home/bin/cmsbackup.sh (備份數(shù)據(jù)庫和站點(diǎn)目錄)[root@localhost ~]# /etc/init.d/crond restart [root@localhost ~]# chkconfig --levels 35 crond on (重啟crond服務(wù))擴(kuò)展資料:在/etc目錄下有一個(gè)crontab文件,這個(gè)就是系統(tǒng)任務(wù)調(diào)度的配置文件。用戶所建立的crontab文件中,每一行都代表一項(xiàng)任務(wù),每行的每個(gè)字段代表一項(xiàng)設(shè)置,它的格式共分為六個(gè)字段,前五段是時(shí)間設(shè)定段,第六段是要執(zhí)行的命令段,格式如下:minute hour day month week command其中:1.minute: 表示分鐘,可以是從0到59之間的任何整數(shù)。2.hour:表示小時(shí),可以是從0到23之間的任何整數(shù)。3.day:表示日期,可以是從1到31之間的任何整數(shù)。4.month:表示月份,可以是從1到12之間的任何整數(shù)。5.week:表示星期幾,可以是從0到7之間的任何整數(shù),這里的0或7代表星期日。6.command:要執(zhí)行的命令,可以是系統(tǒng)命令,也可以是自己編寫的腳本文件。
3. Linux定時(shí)任務(wù)設(shè)置
crontab 需要由root用戶部署,逗su - " 切換到root;
地crontab -e" 進(jìn)入crontab 編輯狀態(tài);
輸入" * * * * * /usr/bin/bash /home/ganlin/ganlin.sh", 這代表每秒執(zhí)行一次腳本。
部署完成后 輸入 地crontab -l" 查看crontab 中所有部署的內(nèi)容;
腳本最好不要放在/home目錄下,可以在腳本中寫入一行標(biāo)準(zhǔn)輸出用來在部署完成后測試結(jié)果用。
逗> /dev/null 2>&1逗 這樣寫得結(jié)果是就看不到標(biāo)準(zhǔn)輸出了, /dev/null 代表一個(gè)虛擬的設(shè)備 把標(biāo)準(zhǔn)輸出寫到一個(gè)不存在的設(shè)備中去了。
4. Linux 設(shè)置定時(shí)任務(wù)
linux服務(wù)器中經(jīng)常用到crontab這個(gè)命令設(shè)定自動(dòng)執(zhí)行的任務(wù)。
5. linux定時(shí)任務(wù)每小時(shí)執(zhí)行一次
Linux定時(shí)任務(wù)實(shí)現(xiàn)原理
Linux系統(tǒng)定時(shí)任務(wù)(crond)一:定義crond是Linux系統(tǒng)中用來定期執(zhí)行命令或指定程序任務(wù)的一種服務(wù)或軟件1、linux系統(tǒng)自身定期執(zhí)行的任務(wù)(輪詢系統(tǒng)日志、備份數(shù)據(jù)等)2、用戶執(zhí)行的任務(wù)(定時(shí)更新同步時(shí)間、網(wǎng)站數(shù)據(jù)備份等)二:命令語法定時(shí)任務(wù)的命令是crontab,其守護(hù)...
6. linux定時(shí)任務(wù)每4小時(shí)執(zhí)行一次
1、針對(duì)Linux系統(tǒng)的查詢方法(含Redhat、SUSE)看 /var/log/cron這個(gè)文件就可以,可以用tail -f /var/log/cron觀察22、針對(duì)UINX系統(tǒng)查詢方法(AIX、HP-UX)在 /var/spool/cron/tmp文件中,有croutXXX00999的tmp文件,tail 這些文件就可以看到正在執(zhí)行的任務(wù)了。33. mail任務(wù)(Linux UNIX)在 /var/spool/mail/root 文件中,有crontab執(zhí)行日志的記錄,用tail -f /var/spool/mail/root 即可查看最近的crontab執(zhí)行情況。
7. linux定時(shí)任務(wù)每月一次
概述
linux用到定時(shí)任務(wù)需要crontab的幫助
首先終端鍵入:crontab -e
root@sys #:crontab -e
然后進(jìn)行編輯,這里操作和vim操作一至
假設(shè),我需要定時(shí)每秒訪問一次指定網(wǎng)頁,訪問網(wǎng)頁的腳本已經(jīng)寫好了,叫view.sh,放在了/user目錄下,那么定時(shí)腳本將需要這么些。
*/1 * * * * /bin/sh /user/view.sh
解析
crontab [-u username] [-l|-e|-r]
參數(shù):
-u: 只有root才能進(jìn)行這個(gè)任務(wù),也即幫其他用戶新建/刪除crontab工作調(diào)度;
-e: 編輯crontab 的工作內(nèi)容;
-l: 查閱crontab的工作內(nèi)容;
-r: 刪除所有的crontab的工作內(nèi)容,若僅要?jiǎng)h除一項(xiàng),請(qǐng)用-e去編輯。
crontab -e 進(jìn)入編輯模式 #此時(shí)會(huì)進(jìn)入vi的編輯界面讓你編輯工作。注意到,每項(xiàng)工作都是一行。
*/1 * * * * /bin/sh /user/view.sh#分 時(shí) 日 月 周 |=========命令行===|
代表意義 分鐘 小時(shí) 日期 月份 周 命令
數(shù)字范圍 0~59 0~23 1~31 1~12 0~7 就命令啊
特殊字符 - 代表意義
*(星號(hào)) --- 代表任何時(shí)刻都接受的意思。舉例來說,范例一內(nèi)那個(gè)日、月、周都是*,就代表著不論何月、何日的禮拜幾的12:00都執(zhí)行后續(xù)命令的意思。
,(逗號(hào)) --- 代表分隔時(shí)段的意思。舉例來說,如果要執(zhí)行的工作是3:00與6:00時(shí),就會(huì)是:
0 3,6 * * * command
時(shí)間還是有五列,不過第二列是 3,6 ,代表3與6都適用
-(減號(hào)) --- 代表一段時(shí)間范圍內(nèi),舉例來說,8點(diǎn)到12點(diǎn)之間的每小時(shí)的20分都進(jìn)行一項(xiàng)工作:
20 8-12 * * * command
仔細(xì)看到第二列變成8-12.代表 8,9,10,11,12 都適用的意思
/n(斜線) --- 那個(gè)n代表數(shù)字,即是每隔n單位間隔的意思,例如每五分鐘進(jìn)行一次,則:
*/5 * * * * command
用*與/5來搭配,也可以寫成0-59/5,意思相同
拓展內(nèi)容
linux
Linux是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個(gè)基于POSIX和UNIX的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它支持32位和64位硬件。Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計(jì)思想,是一個(gè)性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。
Linux操作系統(tǒng)誕生于1991 年10 月5 日(這是第一次正式向外公布時(shí)間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內(nèi)核。Linux可安裝在各種計(jì)算機(jī)硬件設(shè)備中,比如手機(jī)、平板電腦、路由器、視頻游戲控制臺(tái)、臺(tái)式計(jì)算機(jī)、大型機(jī)和超級(jí)計(jì)算機(jī)。
嚴(yán)格來講,Linux這個(gè)詞本身只表示Linux內(nèi)核,但實(shí)際上人們已經(jīng)習(xí)慣了用Linux來形容整個(gè)基于Linux內(nèi)核,并且使用GNU工程各種工具和數(shù)據(jù)庫的操作系統(tǒng)。
8. linux定時(shí)任務(wù)設(shè)置每周執(zhí)行
Linux系統(tǒng)利用Crontab命令實(shí)現(xiàn)定時(shí)重啟Crontab是一個(gè)很方便的在unix/linux系統(tǒng)上定時(shí)(循環(huán))執(zhí)行某個(gè)任務(wù)的程序使用cron服務(wù),用servicecrondstatus查看cron服務(wù)狀態(tài),如果沒有啟動(dòng)則servicecrondstart啟動(dòng)它,cron服務(wù)是一個(gè)定時(shí)執(zhí)行的服務(wù),可以通過crontab命令添加或者編輯需要定時(shí)執(zhí)行的任務(wù):crontab-u//設(shè)定某個(gè)用戶的cron服務(wù),一般root用戶在執(zhí)行這個(gè)命令的時(shí)候需要此參數(shù)crontab-l//列出某個(gè)用戶cron服務(wù)的詳細(xì)內(nèi)容crontab-r//刪除沒個(gè)用戶的cron服務(wù)crontab-e//編輯某個(gè)用戶的cron服務(wù)比如說root查看自己的cron設(shè)置:crontab-uroot-l再例如,root想刪除fred的cron設(shè)置:crontab-ufred-r、編輯cron服務(wù)時(shí),編輯的內(nèi)容有一些格式和約定,輸入:crontab-uroot-e進(jìn)入vi編輯模式,編輯的內(nèi)容一定要符合下面的格式:*/1****ls>>/tmp/ls.txt編輯/etc/crontab文件,在末尾加上一行:305***rootinit6這樣就將系統(tǒng)配置為了每天早上5點(diǎn)30自動(dòng)重新啟動(dòng)。需要將crond設(shè)置為系統(tǒng)啟動(dòng)后自動(dòng)啟動(dòng)的服務(wù),可以在/etc/rc.d/rc.local中,在末尾加上servicecrondstart如果還需要在系統(tǒng)啟動(dòng)十加載其他服務(wù),可以繼續(xù)加上其他服務(wù)的啟動(dòng)命令。比如:servicemysqldstart基本用法:1.crontab-l列出當(dāng)前的crontab任務(wù)2.crontab-d刪除當(dāng)前的crontab任務(wù)3.crontab-e(solaris5.8上面是crontab-r)編輯一個(gè)crontab任務(wù),ctrl_D結(jié)束4.crontabfilename 以filename做為crontab的任務(wù)列表文件并載入 crontabfile的格式: crontab文件中的行由6個(gè)字段組成,不同字段間用空格或tab鍵分隔。前5個(gè)字段指定命令要運(yùn)行的時(shí)間 分鐘(0-59) 小時(shí)(0-23) 日期(1-31) 月份(1-12) 星期幾(0-6,其中0代表星期日) 第6個(gè)字段是一個(gè)要在適當(dāng)時(shí)間執(zhí)行的字符串 例子: #MINHOURDAYMONTHDAYOFWEEKCOMMAND #每天早上6點(diǎn)10分 106***date #每兩個(gè)小時(shí) 0*/2***date(solaris5.8似乎不支持此種寫法) #晚上11點(diǎn)到早上8點(diǎn)之間每兩個(gè)小時(shí),早上8點(diǎn) 023-7/2,8***date #每個(gè)月的4號(hào)和每個(gè)禮拜的禮拜一到禮拜三的早上11點(diǎn) 0114*mon-weddate #1月份日早上4點(diǎn) 041jan*date 補(bǔ)充:在使用crontab的時(shí)候,要特別注意的是運(yùn)行腳本中能夠訪問到的環(huán)境變量和當(dāng)前測試環(huán)境中的環(huán)境變量未必一致,一個(gè)比較保險(xiǎn)的做法是在運(yùn)行的腳本程序中自行設(shè)置環(huán)境變量(export) (1)先建一個(gè)文件crond.txt如下,每天早上5點(diǎn)36分重新啟動(dòng) 365***reboot (2)上傳到/opt目錄 (3)運(yùn)行命令 crontab/opt/crond.txt crontab-l 讓配置文件生效:如果讓配置文件生效,還得重新啟動(dòng)cron,切記,既然每個(gè)用戶下的cron配置文件修改后。也要重新啟動(dòng)cron服務(wù)器。 在Fedora和Redhat中,我們應(yīng)該用; [root@localhost~]#/etc/init.d/crondrestart 如果讓crond在開機(jī)時(shí)運(yùn)行,應(yīng)該改變其運(yùn)行級(jí)別; [root@localhost~]#chkconfig--levels35crondon servicecrondstatus查看cron服務(wù)狀態(tài),如果沒有啟動(dòng)則servicecrondstart啟動(dòng)它,cron服務(wù)是一個(gè)定時(shí)執(zhí)行的服務(wù),可以通過crontab命令添加或者編輯需要定時(shí)執(zhí)行的任務(wù)