前端之家收集整理的这篇文章主要介绍了
bash shell while循环如何突破,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想写一个bash shell脚本来处理文本,这可能需要while循环。
例如,c中的while循环:
- int done = 0;
- while(1) {
- ...
- if(done) break;
- }
我想写一个与之相当的bash shell脚本。但是我经常使用的和我读过的所有经典例子都显示出来的是:
- while read something;
- do
- ...
- done
它没有提供关于如何做的事情(1){}和break;它是明确定义和广泛应用于c,我不必读取stdin的数据。
有没有人可以帮助我与上述c代码的等价物?
谢谢。
在bash中没有什么不同
- done=0
- while : ; do
- ...
- if [ "$done" -ne 0 ]; then
- break
- fi
- done
:是no-op命令;其退出状态始终为0,因此循环运行,直到完成为非零值。
有很多方法可以设置和测试完成的值以退出循环;我上面显示的那个应该在任何与POSIX兼容的外壳中工作。