“while:”vs“while true”

当你看看如何实现无限循环时,你大多会看到这种方法:

while : do # loop infinitely done 

但我只是不明白的使用:在这里。 不是更好使用:

 while true do # loop infinitely done 

从手册:

:[参数]无影响; 该命令除了扩展参数和执行任何指定的redirect之外什么都不做。 返回零退出代码。

由于这个返回值总是为零,因此类似于用作true

看看这个答案: “:”(冒号)GNU Bash Builtin的目的是什么?

冒号是一个内置的命令 ,什么都不做,但是返回0(成功)。 因此,它比调用一个实际的命令来做同样的事情更短(也更快)。