何时在执行while循环后完成echo

时间:2017-07-07 13:24:35

标签: bash shell echo do-while

我遇到了以下简单的时间返回脚本,并想知道如何以及何时触发echo部分,因为它是在while循环完成后放置的:

# !/ bin / bash while ! test -f / tmp / stop ; do date sleep 1 done echo " halted ! "

1 个答案:

答案 0 :(得分:1)

因为在echo " halted ! "之后调用了done,所以它在while循环之外。这意味着“停止了!”只有在我们打破了计时循环的情况下才会回应,这会在脚本返回到循环的“顶部”时发生,并检查test -f /tmp/stop是否为真。如果是,则时间停止,将脚本引导到echo语句,并宣布停止计时(因为我们不再处于循环中)。