是否有可能做`do;条件;一会儿; bash吗?

问题描述 投票:0回答:1

是否可以在do; condition; while中进行bash循环?

例如:

do
curl -f google.com/demo
while [ $? -ne 0 ]
done

如果我这样做

while [ $? -ne 0 ]
do curl -f google.com/demo
done

...我取决于循环之前的命令。

bash
1个回答
0
投票

不,不可能。

唯一有效的替代方法是在无限循环中使用break:

while :; do
   curl -f google.com/demo
   if [ $? -ne 0 ]; then
       break;
   fi
done

无论如何这看起来像是XY问题,您真正想要的可能是循环直到命令返回非零:

while curl -f google.com/demo; do :; done
© www.soinside.com 2019 - 2024. All rights reserved.