zoukankan      html  css  js  c++  java
  • shell脚本每五分钟执行一次可执行程序(nohup)

    两种解决方案:个人推荐第二种,使用crontab来定时执行任务
     
    1.shell代码如下:
    nohup command &. 解释: 后台永久运行command命令。
    (nohup表示后台永远执行,不随终端退出而终止。&表示后台运行,随着终端退出程序而终止。两个一起就是后台永久运行了)
     1 #!/bin/bash
     2 
     3 #需要定时执行的程序
     4 program=testapp 5 
     6 #获取当前时间,例如20171129 <---> perDate=$(date "+%Y%m%d")
     7 #获取一天后的时间
     8 afterdata=$(date -d +1day "+%Y%m%d")
     9 #afterdata=20170323
    10 #每五分钟仅仅执行一次,设置标志位
    11 onceflag=0
    12 
    13 echo 'Task schedule Time: ('$program') program Waiting to run(once per 5min)...'
    14 
    15 #死循环,当检测到当前时间段分钟数符合条件,则开始执行程序
    16 while true ; do
    17         #获取当前分钟数, date获取当前日期,%M来获取当前分钟数。
    18         presentminutes=$(date "+%M");
    19         
    20         if [ `expr $presentminutes % 5` -eq 0 ]
    21         then
    22             if [ $onceflag -eq 0 ]
    23             then
    24                 echo 'Now minute is '$presentminutes''
    25                 echo 'The program ('$program') running...'
    26                 echo $program $afterdata    //打印测试可执行程序格式是否正确
    27                 $program $afterdata
    28                 echo 'The program ('$program') stopped...'
    29                 onceflag=1
    30             else
    31                 continue
    32             fi
    33         else
    34             onceflag=0
    35         fi
    36         
    37         sleep 1 //一秒查询一次当前时间点
    38 done

    2.也可以使用crontab来完成每五分钟定时执行一次可执行任务。关于crontab可以参考我其它博客。



  • 相关阅读:
    FZU-SE-K 第一次累计得分排行榜
    OO第四次总结
    OO第二次总结
    面向对象构造与设计第一次总结
    软件工程实践2019第四次作业
    蹒跚的第一步
    学期导图
    一篇随笔
    【软工】提问回顾与个人总结
    【软工】结对项目博客
  • 原文地址:https://www.cnblogs.com/linux-wang/p/8142844.html
Copyright © 2011-2022 走看看