是否可以在do; condition; while
中进行bash
循环?
例如:
do
curl -f google.com/demo
while [ $? -ne 0 ]
done
如果我这样做
while [ $? -ne 0 ]
do curl -f google.com/demo
done
...我取决于循环之前的命令。
不,不可能。
唯一有效的替代方法是在无限循环中使用break:
while :; do
curl -f google.com/demo
if [ $? -ne 0 ]; then
break;
fi
done
无论如何这看起来像是XY问题,您真正想要的可能是循环直到命令返回非零:
while curl -f google.com/demo; do :; done