当前位置:首页 > 操作系统 > Linux

Linux Gvim shell 运算符

shell运算符:算数,关系,布尔,字符串,文件测试
原生bash不支持简单的数学运算,可通过awk expr实现,expr最常用
expr是一款表达式计算工具,使用它能完成表达式的求值操作

示例如下:

            1 val=` expr2 + 2 `
2echo" Total value : ${val} "

注意
1.表达式和运算符之间要有空格
2.完整表达式要被``包含

 

算数运算符

示例如下: +     -     *     /     %     ==     !=

             1 a=10 2 b=20 3 4 val=` expr ${a} + ${b} `
 5echo" a + b : ${val} " 6 7 val=` expr ${a} - ${b} `
 8echo" a - b : ${val} " 910 val=` expr ${a} * ${b} `    #乘号前必须加才能实现惩罚运算#
11echo" a * b : ${val}"1213 val=` expr ${b} / ${a} `
14echo" b / a : ${val} "1516 val=` expr ${b} % ${a} `
17echo" b % a : ${val} "1819if [ ${a} == ${b} ]        #条件语句写法,后续加入.此条件返回的是true or false,空格不能少#
20then21echo" a is equal to b "22fi2324if [ ${a} != ${b} ]
25then26echo" a is not equal to  b"27fi

 

关系运算符

关系运算符:只支持数字,不支持字符串,除非字符串的值是数字
关系运算符列表
 1.     -eq      检测两个数是否相等,返回true          [ ${a} -eq ${b} ]       equal
 2.     -ne      检测两个数是否相等,返回false            [ ${a} -ne ${b} ]      not euqal
 3.     -gt       检测左边是否大于右边,返回true            [ ${a} -gt ${b} ]       greater than
 4.     -lt        检测左边是否小于右边,返回false           [ ${a} -lt ${b} ]         less than
 5.     -ge        检测左边是否大于等于右边,返回true      [ ${a} -ge ${b} ]        greater or equal
 6.     -le       检测左边是否小于等于右边,返回false    [ ${a} -le ${b} ]        less or equal

示例如下:

            1 a=102 b=203if [ ${a} -eq ${b} ]
4then5echo" a is equal to b "6else7echo" a is not equal to b "8fi

 

布尔运算符

布尔运算符列表
1.    !    非    [ !false ]
2.    -o    或    [ ${a} -lt 20 -o ${b} -gt 100]    a<20或b>100 返回true
3.    -a    与    [ ${a} -lt 20 -a ${b} -gt 100]    a<20并且b>100 返回true
示例如下:

            1 a=102 b=11034if [ ${a} -lt 20 -a ${b} -lt 100 ]  #a<20并且b<100#
5then6echo" a<20或b<100成立!"7else8echo" 不成立! "9fi

 

字符串运算符

字符串运算符列表
1.      =       检测两个字符串是否相等                            [ ${a} = ${b} ]
2.      !=      检测两个字符串是否相等                            [ ${a} = ${b} ]
3.      -z      检测字符串长度是否为0,返回true                    [ -z ${a} ]
4.      -n      检测字符串长度是否为0,返回false              [ -n ${a} ]
5.      str      检测字符串是否为空,不为空返回true       [ ${a} ]

示例如下:

             1 a="abc" 2 b="abc" 3 4if [ ${a} = ${b} ]
 5then 6echo" ${a} = ${b} : a is equal to b " 7else 8echo" ${a} = ${b} : a is not equal to b " 9fi1011if [ ${a} != ${b} ]
12then13echo"  ${a} != ${b} : a is not equal to b "14else15echo"  ${a} != ${b} : a is equal to b "16fi1718if [ -z ${a} ]
19then20echo" -z ${a} : String length is zero "21else22echo" -z ${a} : String length is not zero "23fi2425if [ -n ${b} ]
26then27echo" -n ${b} : String length is not zero "28else29echo" -n ${b} : String length is zero"30fi

 技术分享

原文:http://www.cnblogs.com/blog4matto/p/5565089.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐