-------------------------------------------------------------------------------------------------
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