加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash shell while循环如何突破

发布时间:2020-12-15 19:46:38 所属栏目:安全 来源:网络整理
导读:我想写一个bash shell脚本来处理文本,这可能需要while循环。 例如,c中的while循环: int done = 0;while(1) {...if(done) break;} 我想写一个与之相当的bash shell脚本。但是我经常使用的和我读过的所有经典例子都显示出来的是: while read something;do.
我想写一个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兼容的外壳中工作。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读