[[email protected] ~]# aa=11
[[email protected] ~]# bb=22
[[email protected] ~]# cc=$aa+$bb
[[email protected] ~]# echo $cc
11+22
为什么会出现这种结果,由于linux默认是字符串类型
想要获取正确结果,应该申明
方法一
[[email protected] ~]# declare -i cc=$aa+$bb
[[email protected] ~]# echo $cc
33
declare [+-属性 ] 变量名
- 给变量添加属性类型
+ 删除变量熟悉类型-
-i 设为整形
-x 将变量设为环境变量 和export效果一样
-p 查看变量被设置的类型
方法二
[[email protected] ~]# dd=$(expr $aa+$bb)
[[email protected] ~]# echo $dd
11+22
[[email protected] ~]# dd=$(expr $aa + $bb)
[[email protected] ~]# echo $dd
33
可以看出+号两边要有空格,不然结果不是想加结果
方法三
[[email protected] ~]# ff=$(($aa+$bb))
[[email protected] ~]# echo $ff
33
时间: 2024-10-05 21:05:37