2.Shell中的数值计算

加减乘除和取余运算:
    (1)使用expr命令,里面的数值也可以用变量代替,不但能计算还会把结果输出
        expr 1 + 1        
            #执行这条命令,会在屏幕中输出2
            
        expr 1 - 1
        
        expr a '*' 2    或者     expr 1 \* 2    
            #因为对于expr来说 * 在shell中是通配符,得先取消通配符的含义,它才是乘法,''和\都能取消符号的特殊含义    
            #\是转译符号,只会屏蔽后面一个字符的特殊含义,以空格区分是否是一个字符,比如echo $a1 就会输出a1
            #也可以用变量和数字计算,a的值必须是数字
        
        expr 2 / 1
            #/这个expr能直接识别是除以
        
        expr 20 % 10
            #求20除以10的余数
        
        使用方法:
            a=$(expr 1 + 2)        #这里不会有显示,只是将结果作为值了
            echo $a    就会显示3
    
    (2)使用$[]和$(()) 命令,不会将运算结果输出到屏幕,它俩是一样的
        $[1+1]        #不会在屏幕中输出,可以结合echo 看出结果,也可以用$()引用计算结果
        $[a-a]        #也支持变量和变量的计算,变量的值得是数字
        $[1*1]        #它自己就识别*是乘法
        $[1/1]
        $[1%1]
    ___________________________________________________
    
    (3)使用let命令,可以改变变量本身的值,不把结果输出在屏幕
        let a=a+1    
            #让a+1,此时a的值+1了
            #如果只是a+1的还可以 let a++
            #如果是a+2可以写成let a+=2
        let a=a-1
            #如果只是a-1就let a--
        let a=a*2
            #也可以写成let a*=2
        let a=a/3
            #也可以写成let a/=3
        let a=a%2
            ##也可以写成let a%=2
    ___________________________________________________
    
    (4)使用bc命令,可以做小数运算,并输出结果
        但是bc命令是交互的,必须用 | 传参给bc来实现非交互的计算
        echo "1.1+2" | bc    
            #+ - * / % 如上
        echo "scale=3;3/2"    | bc
            #scale=3; 是定义要算到几位小数,并全都输出

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值