您的位置:首页 > 运维架构 > Shell

shell编程之运算符

2017-08-05 21:45 183 查看
shell变量是弱类型的,且默认是字符串型,所以默认情况下无法进行数值计算。

解决方法如下:

declare主动声明变量类型

命令格式:declare  [+/-] [选项]  变量名
选项:     -   :给变量设定类型属性
     +  :取消变量的类型属性
    -a  :将变量声明为数组型
     -i  :将变量声明为整数型(integer)
    -x  :将变量声明为环境变量
     -r :将变量声明为只读变量
     -p:显示指定变量的被声明的类型

例子:a=1   
b=2
declare -i c=$a+$b
        #c的值为3,而不是"1+2"

声明数组变量

命令格式: bag[0]=ab 或declare -a bag[2]=dfs

查看数组变量

echo ${bag}                 #没有下标,查看第一个元素
echo ${bag[1]}             #查看下标为1的元素
echo ${bag[*]}      #查看所有元素

数值运算方法

除了上面讲的declare -i方法,还有如下方法:

expr或let数值运算工具

例子:a=2
        b=3
        d=$(expr $a + $b)        注意: + 两侧必须有空格!

"$((运算式))"或"$[运算式]"

例子:   a=3
    b=5
    c=$(($a+$b))     或  c=$[$a+$b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  shell linux