[Shell]Bash变量:数值运算及运算符

-------------------------------------------------------------------------------------------------

Shell中的变量的类型默认都是字符串,所以:

#!/bin/bash

aa=1
bb=2
cc=$aa+$bb

echo $cc        # 1+2

数值运算的方式:

  declare声明变量的类型:

    declare [+/-] [选项] 变量名

  选项:

    -  :给变量设定类型属性

    + :取消变量的类型属性

    -i :将变量声明为整数型(int)

    -x :将变量声明为环境变量

    -p :显示指定变量的被声明的类型

aa=1
bb=2
cc=$aa+$bb

declare -p aa    # declare -- aa="1"

export aa

declare -p aa    # declare -x aa="1" , declare具有了-x属性

declare -i cc=$aa+$bb  # 将cc声明为数值型  

echo $cc         # 3

方法1(declare):

  declare -i cc=$aa+$bb

方法2(expr或let数值运算工具):

  dd=$(expr $aa + $bb)        # dd的值是aa和bb的和,+ 号左右两边必须有空格才有效

方法3:

  $((运算式))  或  $[运算式]       # 如果用单小括号,代表是包含的是系统命令

   echo $(( $aa+$bb ))

运算符有:赋值运算符,数值运算符,逻辑运算符.

  echo $(( aa=1 ))            # 1

  echo $(( 3*(6%4) ))          # 6

  echo $(( 1 && 0 ))           # 0

Link:http://www.cnblogs.com/farwish/p/4772110.html

原文地址:https://www.cnblogs.com/farwish/p/4772110.html