如何在shell中设置计时器

时间:2015-04-28 13:14:18

标签: shell sh

我们可以在shell脚本中设置计时器吗? 意味着如果我将计时器设置为20秒,我的shell脚本应该像这样执行:

20..19..18..17..

完成后我应该得到结果。可能吗 ?请帮助我。

1 个答案:

答案 0 :(得分:0)

它并不完全清楚你想要什么:如果xyz.sh在3秒内结束,你想再等17秒吗?或者您想在20秒后中断xyz.sh并使其产生输出?如果是后者:

$ cat a.sh
#!/bin/bash 

./xyz.sh &

i=${1-20}
echo
while test $i -gt 0; do printf "\r$((i--))..."; sleep 1; done
kill $!


$ cat xyz.sh 
#!/bin/sh

foo() { echo "this program doesn't do much"; }
trap foo TERM
sleep 30 &
wait