Chinaunix首页 | 论坛 | 博客
  • 博客访问: 187570
  • 博文数量: 24
  • 博客积分: 418
  • 博客等级: 一等列兵
  • 技术积分: 230
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-27 01:19
文章分类

全部博文(24)

文章存档

2013年(7)

2012年(17)

分类: Python/Ruby

2012-04-07 11:54:36

shell中,对于一些条件的比较,涉及到很多参数。
例如:

  1. #!/bin/bash
  2. a=1
  3. b=2
  4. if [ a -lt b ]
  5. then
  6. echo "$a < $b"
  7. else
  8. echo "$a > $b"
  9. fi
下面将总结下这些参数:
    
对于算术比较运算符
        eq :  等于                例如: 4 -eq 4   如果相等则为真,返回0,之后执行then后语句,反之返回1
        ne :    不等于             例如: 4 -eq 4
        le  :  小于等于           例如: 3 -le  5      
        ge :  大于等于            例如:    5 -ge $num
        lt   :  小于              例如:  5 -lt   $num
        gt  :  大于               例如: 5  -gt  $num
  
对于字符串比较
        -z   :字符串是否为空串       例如: [  -z  $str  ]        如果为空串,则为真,返回为0
        -n   :字符串是否为非空串     例如: [  -n  $str  ] 
        =    :2个字符串是否相同      例如: [  $str1 =  $str2 ] 
        !=   : 2个字符串是否不相同    例如: [  $str1 !=  $str2 ]     如果2个字符串不同,则为真,返回0
 
对于文件的判断:
         -d  filename   :判断文件是否为目录      例如:[  -d   /etc/passwd ]     如果为目录,则为真
         -f  filename   :判断文件是否为文件      例如:[  -f   /etc/passwd ]
         -r  filename   :判断文件是否为可读      例如:[  -r   /etc/passwd ]
         -x  filename   :判断文件是否为可执行    例如:[  -x   /etc/passwd ]
         -w  filename   :判断文件是否为可写      例如:[  -w   /etc/passwd ]
         -L  filename   :判断文件是否为链接文件  例如:[  -L   /etc/passwd ]
         -e  filename   :判断文件是否为存在      例如:[  -e   /etc/passwd ]
  
逻辑运算符:
         -a  : 逻辑与   相当有and ,     例如:[  $a -gt 90   -a   $a -lt 100 ] 
         -o  :  逻辑或   相当有or         例如:[  $a -gt 90   -o    $a -lt 100 ]
          ! : 逻辑非                    例如:[  ! " $ a -gt 90" ]

阅读(1825) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

☆彼岸★花开2012-04-10 01:48:31

ne :    不等于
        le  :  小于等于      
        ge :  大于等于
        lt   :  小于