美文网首页PHP程序员
一个计划任务实现每日与每月的定时统计

一个计划任务实现每日与每月的定时统计

作者: php转go | 来源:发表于2020-12-16 14:47 被阅读0次

    遇到过一个需求,每天0点统计上一天的数据,每个月1号统计上一个月的总数据
    一般情况下,为了方便,会直接创建两个计划任务
    我觉得一个sh文件就能解决的问题,就没必须搞两个计划任务
    介于我是PHP开发,我用的是THINKPHP框架,用的是CLI运行模式
    当然也有PHPer喜欢用计划任务 curl 访问链接的方式,至于哪种方式比较好,见仁见智啦
    计划任务设置

    0 0  * * *  sh  xxx/xxxx/xxx.sh >> log.txt
    #如果设置curl访问链接方式
    0 0  * * *  curl  https://xxx.com/xxx/xxx
    
    

    shell文件内容

    #!/bin/bash
    basePath=../;
    
    time=$1;
    if  [ ! -n "$time" ] ;then
    #如果没有传具体日期,就默认昨天
      time=$(date "+%Y%m%d" -d  "-1 days");
    
    fi
    
    today=${time:0-2:2} #从右边第2个字符开始截取,一直到结束,得到日期。
    
    first='01';
    #切换到站点根目录
    cd $basePath;
    #执行每天定时数据统计,daily 为自定义指令
    php think daily $time
      #如果是01号
     if  [ $today == $first ]
    
    then
    #执行每个月定时数据统计
    php think monthly $time
    
    fi
    

    相关文章

      网友评论

        本文标题:一个计划任务实现每日与每月的定时统计

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