shell中内置关键字[[]]:检查条件是否成立
0.[[]] [] (())的对比
[[ ]] 对数字的比较不友好,所以使用 if 判断条件时,建议用(())来处理整型数字,用[[]]来处理字符串或者文件。
用法 | 说明 | 脚本 | 支持逻辑运算符 | |||||||
---|---|---|---|---|---|---|---|---|---|---|
(()) | ((expression)) 不需要注意空格 |
| ((a>7 && b==c)) | |||||||
test/[] | test expression 或[ expression ] 注意空格 |
|
|
| ||||||
[[]] [[ ]] 是 test 的升级版,对细节进行了优化,并且扩展了一些功能 | [[ expression ]] 注意空格 |
|
| [[ ]] 剔除了 test 命令的
|
1.[[]]支持正则表达式
在 Shell [[ ]] 中,可以使用=~
来检测字符串是否符合某个正则表达式,它的用法为:
[[ str =~ regex ]] 其中,str 表示字符串,regex 表示正则表达式。
功能 | 脚本 | 结果 | 说明 |
---|---|---|---|
检测一个字符串是否是手机号 |
| 运行结果1: 13203451100 你输入的是手机号码 运行结果2: 132034511009 你输入的不是手机号码 | 对
|
相关推荐
huha 2020-10-16
laisean 2020-11-11
大牛牛 2020-10-30
firefaith 2020-10-30
liguojia 2020-10-20
wangzhaotongalex 2020-10-20
以梦为马不负韶华 2020-10-20
JohnYork 2020-10-16
Julyth 2020-10-16
applecarelte 2020-10-16
laisean 2020-09-27
flycappuccino 2020-09-27
liguojia 2020-09-27
wangzhaotongalex 2020-09-22
流年浅滩 2020-10-23
liujianhua 2020-10-22
woaimeinuo 2020-10-21
tufeiax 2020-09-03
laisean 2020-09-01
vvu 2020-09-16
libao 2020-09-16
Yyqingmofeige 2020-08-18
zhushixia 2020-08-17