我遇到了以下简单的时间返回脚本,并想知道如何以及何时触发echo部分,因为它是在while循环完成后放置的:
# !/ bin / bash while ! test -f / tmp / stop ; do date sleep 1 done echo " halted ! "
答案 0 :(得分:1)
因为在echo " halted ! "
之后调用了done
,所以它在while循环之外。这意味着“停止了!”只有在我们打破了计时循环的情况下才会回应,这会在脚本返回到循环的“顶部”时发生,并检查test -f /tmp/stop
是否为真。如果是,则时间停止,将脚本引导到echo语句,并宣布停止计时(因为我们不再处于循环中)。