搜索
linux - bash shell while loop无法break
黄舟
黄舟 2017-04-17 12:01:12
[Linux讨论组]

为什么这个while循环执行完echo while00 && echo while01后不break

while $(sleep 0.5); do pgrep -f baidu > /dev/null 2>&1 || (echo while00 && echo while01 && break); done

监听进程退出后,执行后面的命令
比如ping -c 10 -i 1 baidu.com

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
怪我咯

(...) 会创建一个子 shell,所以 break 不工作。

其实按照你的代码意图,这里不写括号是完全没问题的,直接去掉括号就可以了。

P.S. 你前面写的 while $(sleep 0.5) 是对 shell 命令的误用,这里应该写 while sleep 0.5,加个 $ 多此一举了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号