Bash:比较两个字符串问题

时间:2015-06-25 11:15:46

标签: linux bash

我写了以下bash脚本:

v1 = grep 'a' a.txt
v2 = grep 'a' b.txt

问题是我的脚本将始终显示"不同的"即使存储在value和value2变量中的字符串没有不同。 bash实际比较了什么?

另一个与此问题相关的问题。我们说我们有:

A

如果grep结果很大,我们可以存储和比较这些变量吗(假设每个变量都超过50000行)?

1 个答案:

答案 0 :(得分:3)

在条件:

中,比较运算符周围需要一个空格
if [[ "$value" != "$value2" ]]; then
        echo "different" 
else
        echo "match"
fi

如果你不这样做,你只是测试一个字符串 - 字面意思Maria Ion Gheorghe Vasile Maria Maria Ion Vasile Gheorghe!=Maria Ion Gheorghe Vasile Maria Maria Ion Vasile Gheorghe,条件将始终评估为真,从而产生different