bash + break 语法 + 通过 break n 退出循环

bash + break 语法 + 通过 break n 退出循环

我们在 Bash 脚本中创建以下循环

until [[ $completed == true ]]
do
if .....
   then
   echo "procedure ended"
   break # break the for looop
else
   .
   .
fi
.
.
done

当程序结束时,我们希望退出循环(参见echo "procedure ended"

我们不确定是否需要设置breakbreak 1

答案1

POSIX 规范break [n]明确指出[强调我的]:

如果n指定了,break实用程序将退出n封闭的forwhileuntil循环。如果n没有指定,break则应表现得像n已指定为一样1执行应继续执行退出循环后立即执行的命令。的值为n正十进制整数。如果n大于封闭循环的数量,则应退出最外层的封闭循环。如果没有封闭循环,则行为未指定。

Bash 符合此规范。所以答案是:没关系,break并且break 1是等效的。

相关内容