bash中的循环直到无法正常工作为止

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

下面的循环捕获两个变量opt1和opt2,但是该循环在没有数据相等的情况下退出。

until [ "$OPT1" -eq "$OPT2" ]; do
echo "data is equal." | mailx -s "DATA Match" [email protected]
sleep 30
if [ $? -eq 0 ]; then
break
fi
done
echo "data match is completed" | mailx -s "DATA Match" [email protected]

[请提供帮助,我希望循环继续进行,直到两个变量都相等,然后继续执行脚本中的下一个命令。

linux bash unix sh ksh
1个回答
0
投票
# ...
sleep 30
if [ $? -eq 0 ]; then
# ...

这将检查sleep命令的退出代码,这很可能不是您想要实现的。

© www.soinside.com 2019 - 2024. All rights reserved.