有没有这样的限制:-eq: 适用于或偏向于 "数字相等"= : 选用于或偏向于 "字符串相等"Bash shell 中 "-eq" 与 "=" 等价吗?
2 回答
Helenr
TA贡献1780条经验 获得超3个赞
RTFM
$ man test
STRING1 = STRING2 the strings are equal STRING1 != STRING2 the strings are not equal INTEGER1 -eq INTEGER2 INTEGER1 is equal to INTEGER2
慕尼黑5688855
TA贡献1848条经验 获得超2个赞
准确来说是适用对象不同:-eq
和 =
都可以用来条件测试进行判断两个操作对象是否相同,但是有如下区别:-eq
适用于整数数字,不能进行字符串的条件测试=
既适用于数字,又适用于字符串。
我做了下测试:
$ [ 1 -eq 1 ] && echo "ok"ok $ [ 1 = 1 ] && echo "ok"ok $ [ "a" -eq "a" ] && echo "ok"sh: [: a: 需要整数表达式 $ [ "a" = "a" ] && echo "ok"ok
- 2 回答
- 0 关注
- 131 浏览
添加回答
举报
0/150
提交
取消