首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在特定时间执行的Shell无限循环

在特定时间执行的Shell无限循环
EN

Stack Overflow用户
提问于 2016-02-10 19:17:55
回答 2查看 2.7K关注 0票数 1

我可以访问Linux CentOS盒。(我不能悲伤地使用crontab )

当我每天需要运行一个任务时,我只是创建了一个有睡眠的无限循环。(它跑,睡觉~24小时,然后再跑)

代码语言:javascript
复制
#!/bin/sh


while :
do
    /home/sas_api_emailer.sh |& tee first_sas_api

sleep 1438m
done

最近我有一项任务需要每天早上6:00在特定时间运行(我不能使用crontab)

如何创建只执行@ 6:00上午6:00的无限循环?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-02-10 19:53:40

检查循环中的时间,如果不是您想要的时间,则睡一分钟。

代码语言:javascript
复制
while :
do
    if [ $(date '+%H%M') = '0600' ]
    then /home/sas_api_emailer.sh |& tee first_sas_api
    fi
    sleep 60
done
票数 2
EN

Stack Overflow用户

发布于 2016-02-10 20:00:35

你(至少!)三种选择:

  1. cron 这是最好的选择。不幸的是,你说这不是你的选择。拖动:(
  2. 在… 从标准输入或指定的文件中读取命令,这些命令将在以后执行。

例如:at -f myjob noon

下面是关于athttp://www.thegeekstuff.com/2010/06/at-atq-atrm-batch-command-examples/的更多信息

  1. 编写“轮询”或“同时循环”脚本。例如: 当真#计算等待时间睡眠wait_time #做某事 以下是一些关于“计算等待时间”的好主意:睡到某一特定的时间或日期
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35324020

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档