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

 

posted @   paul_hch  阅读(5903)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示