天问

crontab深入学习 每隔n小时/n月执行

现在有一个简单shell脚本需要每隔3个月执行一次,crontab月取值范围1-12,表示第几个月执行。隔3个月怎么写呢?

-----------------引

crontab有一些符号设置定时:

星号(*):代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。

逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”

中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”

正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。

 

举例:(1)每隔三个月,在每月1号凌晨3点执行脚本:

0 3 1 */3  0 root /xx.sh

(2)每隔三个月执行,可以直接指定哪几个月执行,比如指定1,4,7,10几个月1号,凌晨3点执行:

3表示凌晨3点,1表示每月1号,1,4,7,10表示每年的第1,4,7,10月。

 

如果不怕麻烦,或者没有设置crontab权限的用户。我还写过一个java定时推送邮件报表的工具,不依赖crontab,而是采用java自带的定时器。后续有时间整理分享。。

博客地址:http://blog.yoqi.me/?p=12887
扫我捐助哦
喜欢 2

这篇文章还没有评论

发表评论