Chinaunix首页 | 论坛 | 博客
  • 博客访问: 476128
  • 博文数量: 104
  • 博客积分: 3455
  • 博客等级: 中校
  • 技术积分: 1216
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-18 18:33
文章分类

全部博文(104)

文章存档

2015年(3)

2014年(1)

2013年(7)

2012年(8)

2011年(11)

2010年(18)

2009年(56)

我的朋友

分类:

2009-02-25 15:45:17

内置命令test根据表达式expr求值的结果返回 0(真)或1(假).

[]等同于test.
改变运算优先级使用 \(  \) 逻辑运算使用 -a -o
[ $T = 1 -o \( $T = 0 -a $X -eq 8 \) ]

[[]]可以使用更通用的语法,改变优先级用(),逻辑运算用&& ||
[[ $T = 1 || ( $T = 0 && $X -eq 8 ) ]]
通配符匹配
[[ "abc" == aa* ]]
;echo $?      //返回1(假)
正则表达式
[[ "abc" =~ aa* ]] ;echo $?      //返回0(真)
因为通配符和正则表达式*的意思不同.

注:[]中的==是等于的意思,不会进行通配符匹配.且在[]中不支持=~.  


摘自http://www.ibm.com/developerworks/cn/linux/l-bash-test.html
阅读(974) | 评论(0) | 转发(0) |
0

上一篇:新的生活

下一篇:杭州半个月

给主人留下些什么吧!~~