crontab配置每12个小时执行一次任务

平时很少用 crontab配置定时任务。最近配了一个,但由于对规则不熟,把自己给坑了。

我的需求是:配置一个每 12个小时执行一次的任务,于是想当然的用 crontab配置了如下任务:

* */12 * * * bash /home/zhoumin/xxx.sh

期待着每天自动执行两次上面的脚本,晚上 12点一次,中午 12点一次。

结果第二天早上起来看日志,才发现昨夜里 12点那一个小时里,脚本被执行了 31次,有点不理解,为什么是 31次?

查了一些资料后才发现原来是由于我将 crontab任务配置中的 分钟位 配置为了 “*”,导致在 12点那一个小时内每分钟执行一次任务,但又由于我在脚本里判断了重入的问题,确保了同一时间只有一个脚本运行,而且每次运行大概 2分钟,所以上面的脚本被成功执行了 31次。

正确的配置应该是将 分钟位 配置为 0,这样确保每 12个小时只执行一次任务,如下所示:

0 */12 * * * bash /home/zhoumin/xxx.sh
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值