bash shell while loop无法break-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

bash shell while loop无法break

a123456678 2016-06-20 15:44:51 1549

为什么这个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)
  • a123456678
    2019-07-17 19:44:13

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

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

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

    0 0
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

相似问题
最新问题
推荐课程