bash学习记录(四) bash中的操作及相关话题
计算符 Operators
一.赋值(assignment)
变量赋值:初始化变量或者改变变量的值
在所有的赋值操作中,计算赋值和字符串复制都是可以的,并不存在差异。
1 | var=27 |
二.计算操作符
+
,-
,*
,/
,%
(取模运算),+=
,-=
,*=
,/=
,%=
这些操作符和其他语言(比如java)语义相同。唯一有个差异的是 **
是乘方操作
1 | #一般赋值 |
需要注意的是bash不能理解浮点数,他会默认把浮点数当作字符串来处理。
需要在脚本中使用
bc
来计算浮点数
三.其他操作符
按位操作:
<<
: bitwise left shift (multiplies by 2 for each shift position)>>
: bitwise right shift (divides by 2 for each shift position)&,|,~,^
: 分别对应 位与,位或,位否,异或逻辑操作
!
:非&&
: AND||
: OR杂项
,
:逗号操作符,连接多个计算表达式,但是需要注意的是,这样只能返回最后一个算式的值1
2
3
4
5
6
7let "t1 = ((5 + 3, 7 - 1, 15 - 4))"
echo "t1 = $t1" # t1 = 11
# Here t1 is set to the result of the last operation. Why?
let "t2 = ((a = 9, 15 / 3))" # Set "a" and calculate "t2".
echo "t2 = $t2 a = $a" # t2 = 5 a = 9
`