是否有任何替代品,替代品或bash技巧可以在不使用睡眠的情况下延迟命令?例如,执行以下命令而不实际使用sleep:
$sleep 10 && echo "This is a test"
解决方法:
你有睡眠的替代品:他们在和cron.与睡眠相反,这些需要您提供运行所需的时间.
>通过执行service atd status确保atd服务正在运行.
现在让我们说日期是UTC时间上午11:17;如果你需要在11:25 UTC执行一个命令,语法是:echo“这是一个测试”|在11:25
现在请记住,atd默认情况下不会记录作业的完成情况.有关更多信息,请参阅此link.您的应用程序最好有自己的日志记录.
>您可以在cron中安排作业,更多参考:man cron查看其选项或crontab -e添加新作业.可以检查/ var / log / cron中有关作业执行的信息.
FYI睡眠系统调用暂停当前执行并将其调度为w.r.t.传递给它的论点.
编辑:
正如@Gaius提到的那样,你也可以在命令中添加分钟时间.但是假设时间是12:30:30,现在你运行调度程序现在是1分钟.即使指定了1分钟(转换为60秒),at也不会等到12:31:30执行作业,而是在12:31:00执行作业.时间单位可以是分钟,小时,天或周.更多请参考
例如:echo“ls”|现在1分钟
标签:bash,linux,shell,sleep,shell-script
来源: https://codeday.me/bug/20190808/1625029.html