首先我们来看下面这幅图,为啥cc的值不是33呢,其实是因为在Linux的Shell当中,变量的默认类型全都是字符串类型,所以aa和bb都是字符串,让他们俩相加就是字符串相加,根本就不会进行数值运算。
那如果想要进行数值运算,在Linux当中就要使用特殊的数值运算方法,本节就来介绍一下数值运算的方法。
在此之前我们先来学习一下declare命令
1.declare声明变量类型
格式:
[root@localhost~]#declare [+/-] [选项] 变量名
选项:
-:给变量设定类型属性
+:取消变量的类型属性
-i:将变量声明为整数型(integer)
-x:将变量声明为环境变量
-p:显示指定变量的被声明的类型
例1:declare -p
未声明前,通过-p查看被声明类型,显示--,没有任何declare属性;声明变量aa为环境变量后,再次查看显示为-x,即为环境变量(declare -x和export作用一样)
例2:declare -i
-i:将变量声明为整数型(integer),进行数值运算
其他数值运算方法:
①expr数值运算工具(该方法了解即可)
②((运算式))、[运算式](推荐)
2.运算符
注意:优先级数字越大越优先
例1:虽然乘和除的优先级高于加,但是通过小括号可以调整运算优先级
例2:14不能被3整除,余数是2
例3:逻辑与运算只有想与的两边都是1,与的结果才是1,否则与的结果是0;逻辑或运算只要有一边是1,或的结果就是1,两边都为0,或的结果才是0
END