为什么直到循环不执行至少一次

时间:2015-07-26 17:00:37

标签: bash shell

我很好奇为什么这至少不会进行一次?!

until_loop=

    until [[ -z $until_loop ]]; do
       echo "Can't touch this!"
       until_loop="infinite_loop"
    done

但是这是

until_loop="proceed"

    until [[ -z $until_loop ]]; do
       echo "Stop me with ctrl-c!"
       until_loop="infinite_loop"
    done

1 个答案:

答案 0 :(得分:3)

until关键字相当于while !(其中!是逻辑 NOT )。命令的退出状态

[[ -z $until_loop ]]
运行循环体之前检查 - 的行为与C风格相同

do { ... } while (...);

这意味着如果条件为false,则循环将永远不会运行。