《鸟哥的linux私房菜》基础学习篇P382中说,在bash中"="与"=="是同样的,都代表推断是否相等,仅仅只是因为其它语言一般写法使用"=="。因此建议使用后者。
</p><p>可是实验时,二者还是有所不同。环境为ubuntu,3.5.0-43-generic #66~precise1-Ubuntu SMP Thu Oct 24 14:55:08 UTC 2013 i686 i686 i386 GNU/Linux。
1 a="" 2 b="" 3 if [ "$a" == "$b" ] 4 then 5 echo "==" 6 else 7 echo "!=" 8 fi若使用"=="。则会报错例如以下:
sh t2.sh
t2.sh: 3: [: unexpected operator
!=
假设使用"="。则通过:
[arthur@E430 ~/workspace/test]$sh t2.sh
==