美文网首页每天一个Linux命令程序员我用 Linux
crontab 定时器 纠错,以及每五天执行命令方法

crontab 定时器 纠错,以及每五天执行命令方法

作者: BlackChen | 来源:发表于2017-04-17 19:52 被阅读147次

    原来一直记错了,今天又重新学习了一遍



    | | | | | |
    | | | | | + year [optional]
    | | | | +----- day of week (0 - 7) (Sunday=0 or 7)
    | | | +---------- month (1 - 12)
    | | +--------------- day of month (1 - 31)
    | +-------------------- hour (0 - 23)
    +------------------------- min (0 - 59)

    具体例子大家网上找,推荐一个crontab 的计算网站,在线工具

    在线计算1
    在线计算2

    如何实现每隔5天执行脚本.
    **注意: **
    0 0 */5 * * * 这个是错误的!!!
    0 0 */5 * * * 这个是错误的!!!
    0 0 */5 * * * 这个是错误的!!!

    重要的事情说三遍....

    方法1:
    自己创建一个文件,每天执行一次脚本,然后计算天数.当count>5 的时候,说明是第5天,可以执行脚本,然后重置时间.

    count=$(cat counter_file)
    count=$((count+1))
    if [ $count -ge 5 ] 
       then
          do stuff here / call another script
          count=0
    fi
    echo $count >counter_file
    

    方法2:
    通过date --utc --date "$1" +%s 来获得今天(不是当前时间,是00:00:00)距离1970年的秒数,然后除以3600 再除以24 获得天数,然后取5的余数.
    为0的话,说明正好过了5天,可以在脚本开始加入这个逻辑,然后脚本在crontab中每天执行判断一次.
    0 0 1 * * * 每天 的00:00:00执行命令

    相关文章

      网友评论

        本文标题:crontab 定时器 纠错,以及每五天执行命令方法

        本文链接:https://www.haomeiwen.com/subject/olqxzttx.html