那些年我们踩得那些shell坑(二)

0x01 测试环境
 
OS:red hat 6.8
shell: bash shell
 
0x02 字符串“迷踪拳”
 
比较字符串是否相等?具体情况代码,,(看不懂的小白自行脑补。。)
 
#!/bin/bash
str1="tom"
str2="cat"
if [ "$str1"=="$str2" ]; then
echo "string is same"
else
echo "string is no same"
fi
 
 
0x03 测试结果
 
结果是什么呢?大家思考一下在往下看结果。。。。

QQ截图20160906173432.png

 
0x04 坑位置
 
问题发生那里?大家是否可以自己思考一下?,有明白的可以抢先回答,稍后给大家公布答案?
 
0x05 答案公布
 
if 判断字符串的时候,记得在“==”两边加上空格
 
#!/bin/bash
str1="tom"
str2="cat"
if [ "$str1" == "$str2" ]; then
echo "string is same"
else
echo "string is no same"
fi

 

6 个评论

==两边要写空格啊不然怎么都成立。
if [ "$str1" == "$str2" ]; then 按楼上大神的说话就不会成立
全部看成一个字符串了
只要不是空的全部成立
真坑!
那如果是其他比较符呢,< > <= >= 或者是!=

要回复文章请先登录注册