我正在尝试在shell中运行while循环
NODESTATE="0"
LOOPC="1"
while [ "$NODESTATE" -ne "UP" ]; do
echo "node is up "
但它在[:UP:期望的整数表达式]中给我一个错误 或者我使用!=而不是-ne
答案 0 :(得分:3)
问题在于你的情况:
while [ "$NODESTATE" -ne "UP" ]; do
-ne
选项用于确定一个比较器在数值上是否与另一个比较器相等。但是你正在进行字符串比较,而不是数字比较。相反,请尝试以下方法:
while [ "$NODESTATE" != "UP" ]; do
您可以阅读man test
,了解[
的各种选项如何运作。