crontab每隔1天执行【转】


有个需求,crontab任务需要每隔1天执行,有俩个方法,如下:

第一种方法,利用crontab执行

0 0 */2 * * shellscript

但是这种方法有个问题,就是有个月份有31天,导致本月31号和下月1号,都会执行此操作,并没有真正实现每隔两天周期来执行任务。

第二种方法,可以通过在/tmp目录下标记文件的方式来实现:

[root@hch ~]# cat sig.sh 
#!/bin/bash
if [ -f /tmp/altday ];then
    rm /tmp/altday
    exit 0
else
    touch /tmp/altday
    sh /root/insert.sh
fi
[root@hch ~]# cat insert.sh 
#!/bin/bash
date >> /tmp/execute.log && echo "execute" >> /tmp/execute.log

 

将脚本添加至crontab中

[root@hch ~]# crontab -l
18 16 * * * sh /root/sig.sh

 

参考

如何使用cron任务每隔2天在固定时间执行任务 - Bob Liu的程序人生 - CSDN博客 https://blog.csdn.net/jinguangliu/article/details/83013646

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM