shell 判断字符串
前言
变量一定要用 "" 包起来,否则容易出问问题
= 和 == 都能用,但是有差异
== 支持模糊匹配
判断字符串长度
主要参数:
-z 长度为: 0 返回 true
-n 长度不为: 0 返回 true
1 | !/bin/bash |
结果:
1 -z:
2 -z:
3 -n 1234
判断两个字符串是否相等
格式:string1 = string2
1 | !/bin/bash |
结果:
1: test_val
2: test_val
报错处理
下面这个错,需要用 [[ 包起来
test.sh: line 107: [: main: integer expression expected
1 | !/bin/bash |
错误用法:不支持-eq 方式
-eq
只支持整数的比较,这样写不报错,注意是不报错,但是结果不会相等。
1 | !/bin/bash |
结果:
1
2
3
所以要格外注意。
总结
使用字符串比较一定要=
或==
,不可以使用-eq
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 人话翻译机!
评论