gpt4 book ai didi

linux - 下面的 UNIX 代码的输出是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 05:14:09 27 4
gpt4 key购买 nike

a=x b=x
If [ $a -eq $b ]
Then
echo "a is equal to b"
else
echo "a is not equal to b"
fi

上面的代码会成功输出“a is equal to b”还是有错误?

最佳答案

在查看脚本时,您使用单括号版本的 test 命令。这与双括号版本相反,双括号版本是 shell 内部测试。

测试命令指出:

INTEGER1 -eq INTEGER2 : INTEGER1 is equal to INTEGER2

但是您不是在比较整数,而是在比较字符串(除非 x 可能是整数的虚拟名称。)。因此,测试将会失败。

$ [ x -eq x ]
[: integer expression expected: x

因此您的输出将显示为a is not equal to b

如果要比较字符串,建议使用运算符=:

STRING1 = STRING2 : the strings are equal

关于linux - 下面的 UNIX 代码的输出是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51598543/

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