3.1.2 简单计算
学习目标
这一节,我们从 [ ] 、 l e t 、 ( ( ) ) 、 []、let、(())、 []、let、(())、(())、小结 五个方面来学习。
$[]
简介
$[]方法,常用于整数计算场景,适合不太复杂的计算,运算结果是小数的也会自动取整。后面的几种也是一样
格式
方法1:$[计算表达式]
方法2:a=$[变量名a+1]注意:这里的表达式可以不是一个整体
简单示例
简单运算
[root@localhost ~]# echo $[100/5]
20
[root@localhost ~]# echo $[ 2 + 5 ]
7变量参与运算
[root@localhost ~]# a=6
[root@localhost ~]# a=$[a+1]
[root@localhost ~]# echo $a
7运算结果取整
[root@localhost ~]# echo $[100/3]
33
let
简介
let是另外一种相对来说比较简单的数学运算符号了
格式
let 变量名a=变量名a+1注意:表达式必须是一个整体,中间不能出现空格等特殊字符
简单示例
简单运算
[root@localhost ~]# i=1
[root@localhost ~]# let i=i+7
[root@localhost ~]# echo $i
8let表达式必须是一个整体
[root@localhost ~]# let i = i * 2
bash: let: =: 语法错误: 期待操作数 (错误符号是 "=")
[root@localhost ~]# let i=i * 2
bash: let: anaconda-ks.cfg: 语法错误: 无效的算术运算符 (错误符号是 ".cfg")
[root@localhost ~]# let i=i*2
[root@localhost ~]# echo $i
16
(())
简介
(())的操作与let基本一致,相当于let替换成了 (())
格式
((变量计算表达式))
注意:对于 $(())中间的表达式,可以不是一个整体,不受空格的限制
简单实践
[root@localhost ~]# num1=34
[root@localhost ~]# ((num2=num1+34))
[root@localhost ~]# echo $num2
68
$(())
简介
$(())的操作,相当于 (()) + echo $变量名 的组合
格式
echo $((变量计算表达式))
注意:对于 $(())中间的表达式,可以不是一个整体,不受空格的限制
简单实践
[root@localhost ~]# num1=34
[root@localhost ~]# echo $((num2=num1+34))
68
小结