如何在一分钟后在linux中启动shell脚本?

Ale*_*han 10 bash

如何在一分钟后启动shell脚本?

假设有两个bash文件a.sh和b.sh
我想在a.sh执行一分钟(或几秒)后执行b.sh.
我应该在a.sh中编码什么?

Mat*_* J. 19

简单.你想用'at'安排你的工作.和'约会'来计算你未来的时刻.

例:

echo b.sh | at now + 1 minute
Run Code Online (Sandbox Code Playgroud)

要么:

echo b.sh | at -t `date -v+60S "+%Y%m%d%H%M%S"`
Run Code Online (Sandbox Code Playgroud)

-v+60S增加60秒到当前时间.您可以精确控制要添加的秒数.

但通常情况下,当人们希望一个程序在一分钟之后启动时,他们并非100%确定它不会花费多于或少于一分钟.而已.b.sh可以在a.sh完成之前启动.或者a.sh可能比"计划"提前30秒完成,而b.sh本来可以更快开始.

我会推荐一个不同的型号.哪里b.sh先推出. a.sh在启动时创建临时文件.execute是任务并在最后删除其临时文件. b.sh注意要创建的临时文件,然后删除.并开始其任务.

  • @alexchan:不同版本的`date`支持不同的选项.试试:`echo b.sh | 现在+ 1分钟` (3认同)