中指定退出条件,否则您编写的伪代码最终会崩溃。
.bat的等效格式为:
:one
<<run program>>
goto :two
:two
<<run program>>
goto :one
end
.sh可以这样做吗?
实际上没有确切的替换。在bash
编程中,您可以定义函数,因此您可以这样做
one() {
# Some stuff
two
}
two() {
# Some more stuff
one
}
虽然最终会耗尽堆栈空间;希望在某些情况下,您将包含停止递归的代码。我知道这只是一个稻草人的例子,但bash
会让你在这里使用其他形式的循环,这将更好地工作;例如:
while true
do
# Some stuff
# Some more stuff
done
无论您试图使用goto语句完成什么,都可以在bash中不使用它来表达,特别是通过编写函数或使用无限while循环(具有跳出该循环的方式)。顺便说一下,除非在一两个
Unix shell允许结构化编程,因此不需要goto
。
while true; do
<<some things here>>
<<more things here>>
done