我正在阅读旧的教程,发现了一个shell脚本:
a=10
b=20
if $a -eq $b
then
echo "a is equal to b"
else
echo "a is not equal to b"
fi
当我将这个shell脚本存储为test.sh并执行它时。它给我下面的输出
test.sh: 3: test.sh: 10: not found
a is not equal to b
我不明白输出的第一行。如果有人可以阐明正在发生的事情,我将不胜感激。
该if
预期的测试,像这样:[ $a -eq $b ]
或[[ $a -eq $b ]]
。
您的示例扩展为:if 10 -eq 20
此时bash查找一个10
显然不存在的名为的程序,因此出现错误消息。
缺少的程序显然会评估为false
导致执行该else
语句的原因。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句