gpt4 book ai didi

linux - Shell 脚本的意外输出

转载 作者:太空狗 更新时间:2023-10-29 12:12:55 25 4
gpt4 key购买 nike

我在浏览旧教程时发现了一个 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 语句。

关于linux - Shell 脚本的意外输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35805532/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com