在Jenkins中我們經(jīng)常要用到定時job秃臣,在某個時間點或者以一個相對固定的頻率去執(zhí)行一項job者冤。
一日矫、定時構(gòu)建語法
(五顆星,中間用空格隔開)
第一顆表示分鐘枢里,取值0~59
第二顆表示小時孽鸡,取值0~23
第三顆表示一個月的第幾天,取值1~31
第四顆表示第幾月栏豺,取值1~12
第五顆*表示一周中的第幾天彬碱,取值0~7,其中0和7代表的都是周日
1.每30分鐘構(gòu)建一次:
H/30 * * * *
2.每2個小時構(gòu)建一次
H H/2 * * *
3.每天早上8點構(gòu)建一次
H 8 * * *
4.每天的8點冰悠,12點堡妒,22點,一天構(gòu)建3次
H 8,12,22 * * *
5.每個月的1-7號一天構(gòu)建一次
H * 1,2,3,4,5,6,7 * *
6.每前半小時中每隔10分鐘溉卓。 (3次, 或許:04, :14, :24)
H(0-29)/10 * * * *
7.每個工作日從早上9點45分開始到下午3點45分結(jié)束這段時間內(nèi)每間隔2小時的45分鐘那一刻皮迟。
45 9-16/2 * * 1-5
8.每個工作日從早上9點到下午5點這段時間內(nèi)每間隔2小時之間的某刻搬泥。
H H(9-16)/2 * * 1-5
9.每月(除了12月)從1號到15號這段時間內(nèi)某刻
H H 1,15 1-11 *
其中每個字段除了可以使用取值范圍內(nèi)的值外,還能使用一些特殊的字符伏尼。
- '* 匹配范圍內(nèi)所有值
- M-N 匹配M~N范圍內(nèi)所有值
- M-N/X 或者 */X 在指定M~N范圍內(nèi)或整個有效區(qū)間內(nèi)每隔X構(gòu)建一次
- A,B,...,Z 匹配多個值
為了在系統(tǒng)中生成定時任務(wù)忿檩,符號H(代表“Hash”,后面用“散列”代替)應(yīng)該用在可能用到的地方爆阶,例如:為十幾個日常任務(wù)配置0 0 * * *將會在午夜產(chǎn)生較大峰值燥透。相比之下,配置H H * * * 仍將每天一次執(zhí)行每個任務(wù)辨图,不是都在同一時刻班套,可以更好的使用有限資源。
符號H可用于范圍故河,例如吱韭,H H(0-7) * * * 代表凌晨0:00到 上午7:59一段時間。你還可以用H代表有或無范圍的區(qū)間鱼的。
符號H 在一定范圍內(nèi)可被認為是一個隨機值理盆,但實際上它是任務(wù)名稱的一個散列而不是隨機函數(shù)。
需要注意的是凑阶,月份中的某天-DOM字段猿规,類似于/3 或者 H/3 的短周期由于月份的天數(shù)不固定,在大多數(shù)月尾總不會工作宙橱。例如姨俩,/3 將會在一個月里面的第一天、第四天养匈。哼勇。。第31天執(zhí)行呕乎,下個月的那天繼續(xù)重復(fù)執(zhí)行积担。散列一般被選擇在1-28天內(nèi),所以H/3將會在跑到月底的3-6天內(nèi)導(dǎo)致空白猬仁。(長時間循環(huán)將會導(dǎo)致長度不一帝璧,但是這種影響也是不明顯的。)
空行和以#開頭的行將會被認為是注釋湿刽。
另外的烁,@yearly, @annually, @monthly, @weekly, @daily, @midnight, 和 @hourly也支持別名。這些使用散列系統(tǒng)自動匹配诈闺,例如:@hourly 和 H * * * * 一樣代表一個小時內(nèi)的任何時刻渴庆。@midnight實際上代表凌晨0:00到凌晨2:59之間的一段時間。