gpt4 book ai didi

bash - 字符串比较不起作用

转载 作者:行者123 更新时间:2023-11-29 08:52:16 26 4
gpt4 key购买 nike

出于某种原因,这个脚本打印“string are equal”

#!/bin/bash
A='foo'
B='bar'

if [ $A=$B ];
then
echo 'strings are equal'
fi

我做错了什么?

最佳答案

你必须在等号两边留一个空格:

if [ "$A" = "$B" ];
then
echo 'strings are equal'
fi

编辑:另请注意变量周围的引号。没有它们,如果其中一个为空,您就会遇到麻烦。

否则,测试将被解释为测试字符串“foo=bar”的长度是否为>0
参见 man test:

   ...
STRING equivalent to -n STRING
-n STRING
the length of STRING is nonzero
...

关于bash - 字符串比较不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6568695/

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