码迷,mamicode.com
首页 > 系统相关 > 详细

shell学习笔记之四(整数运算)

时间:2015-04-30 18:21:26      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:shell   整数运算   运算符   

算数运算符
        shell只支持整数运算
        常见的算数运算大多结合shell的内建命令let来使用。
        + - * / % **(幂运算)
        += -= *= /= %=
    位运算
        >> << & | ^ ~
    自增自减
        ++ -- 
        例:
            let "b=3"
            let "a=(++b)"
其他算数运算
    简单的算数运算过程中,如果有一个值是字符的,那么解析为0
    如R+2=2
    1、使用$[]作运算
        1、到目前看到的$这样的形式有:${}(数组) $[](算数运算) $()(命令替换)
        2、和$(())类似,可用于简单的算数运算
            例:
                echo $[1+1]
                echo $[2-1]
                echo $[2*2]
                echo $[5/2];//舍弃小数
                echo $[5%2] 
                echo $[3**2]
    2、使用expr作运算
        1、用于整数运算
        2、要求操作数和操作数之间用空格隔开,否则只会打印字符串,所以特殊的操作符需要转义字符转义(比如*)
        expr 1 + 1
        expr 2 - 1
        expr 2 \* 2
        expr 2 / 1  
        如果编程的时候习惯了运算符两边有空格,这种运算方式还是不错的,当然要注意“*”需要转义
    3、使用内建命令declare
        当用declare定义成整形后,将后面的字符串解析成了算数运算
        例:
            delcare -i num
            num=1+3
            echo $num  
    注意:
        shell中的算数运算要求运算符和操作数之间不能有空格,而是紧密链接的,特殊符号在这里不用转义,如果算木表达式中含有其他变量也不需要$引用。
    4、算数扩展
        算数扩展是shell提供的整数变量的运算机制,是shell的内建命令之一。
        基本语法:$((算数表达式))
        其中,算数表达式由变量和运算符组成,常见的用法是显示输出和变量赋值。若表达式中的变量没有定义,则在运算中假设为0(不会真给该变量赋值为0)
        例:
            i=2
            echo $((i*3+3)) #i前没有$符号
            echo $((2*(i+2))) #用括号改变运算优先级
    5、使用bc作运算
        上述几种运算都是基于整数的。
        bc:一款高精度计算语言
        直接输入bc,回车进入bc界面
        1、默认情况下bc并不显示小数,通过scale=number设置显示的小数位数。
        2、bc支持算数运算,逻辑运算,比较运算    
        3、支持批处理和以管道方式处理表达式计算    
            例:
                1、#cat cal.bc
                   a=2;b=5;a+b;
                   #cat cal.bc|bc
                2、echo "2+3"|bc

shell学习笔记之四(整数运算)

标签:shell   整数运算   运算符   

原文地址:http://blog.csdn.net/havedream_one/article/details/45396547

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!