美文网首页
Linux shell算术运算&逻辑运算&布尔运算符

Linux shell算术运算&逻辑运算&布尔运算符

作者: tmax | 来源:发表于2018-07-07 00:21 被阅读0次

    算数运算

    expr(注意乘法)

    ptmax@ubuntu:~$ a=123
    ptmax@ubuntu:~$ b=789
    # 加法
    ptmax@ubuntu:~$ c=`expr "$a" + "$b"` #c=`expr $a + $b`也可
    ptmax@ubuntu:~$ echo $c
    912
    #减法
    ptmax@ubuntu:~$ c=`expr $a - $b`
    ptmax@ubuntu:~$ echo $c
    -666
    #整除
    ptmax@ubuntu:~$ c=`expr $a / $b`
    ptmax@ubuntu:~$ echo $c
    0
    #乘法
    ptmax@ubuntu:~$ c=`expr $a \* $b` #乘号前必须加'\'
    ptmax@ubuntu:~$ echo $c
    97047
    

    $[表达式](无需注意乘法)

    #加法
    ptmax@ubuntu:~$ c=$[a+b]
    ptmax@ubuntu:~$ echo $c
    912
    #减法
    ptmax@ubuntu:~$ c=$[a-b]
    ptmax@ubuntu:~$ echo $c
    -666
    #整除
    ptmax@ubuntu:~$ c=$[a/b]
    ptmax@ubuntu:~$ echo $c
    0
    #乘法
    ptmax@ubuntu:~$ c=$[a*b]
    ptmax@ubuntu:~$ echo $c
    97047
    ptmax@ubuntu:~$ 
    

    逻辑运算

    注意 [[表达式]] 写法

    #!/bin/bash
    # author:菜鸟教程
    a=10
    b=20
    
    if  test $a -lt 100 && test $b -gt 100  #或者[[ $a -lt 100 && $b -gt 100 ]]
    then
       echo "返回 true"
    else
       echo "返回 false"
    fi
    
    if  test $a -lt 100 || test $b -gt 100 #或者[[ $a -lt 100 || $b -gt 100 ]]
    then
       echo "返回 true"
    else
       echo "返回 false"
    fi
    

    布尔运算符

    注意 [![ a !=b ]] 与 [ a ==b ] 含义相同

    a=10
    b=20
    
    if [ $a -lt 100 -a $b -gt 15 ]
    then
       echo "$a 小于 100 且 $b 大于 15 : 返回 true"
    else
       echo "$a 小于 100 且 $b 大于 15 : 返回 false"
    fi
    
    if [ $a -lt 100 -o $b -gt 100 ]
    then
       echo "$a 小于 100 或 $b 大于 100 : 返回 true"
    else
       echo "$a 小于 100 或 $b 大于 100 : 返回 false"
    fi
    

    相关文章

      网友评论

          本文标题:Linux shell算术运算&逻辑运算&布尔运算符

          本文链接:https://www.haomeiwen.com/subject/gmrslftx.html