此链接通往 Bash Shell 编程学习的目录导航 ,从入门到放弃,感兴趣的可以去看看:
在 Bash Shell 中,支持很多类型的运算符:
1 - 算数运算符
2 - 整数关系运算符(只支持整数)
3 - 逻辑运算符
4 - 字符串关系运算符
5 - 目录或文件测试文件运算符
1、算术运算符:
算术运算符 | 说明 |
---|---|
+ | 加 |
- | 减 |
* | 乘(必须 * 转义,才能正常使用) |
/ | 除 |
% | 取余 |
如何实现算术运算(+ - * /):
root@zhengzelin:~# a=1
root@zhengzelin:~# b=2
root@zhengzelin:~# c=$a+$b
root@zhengzelin:~# echo $c
1+2
根本没把 加号当加号,就像有的公司一样不把人当人!哈哈哈。
"在 shell 中,+ - * / 默认全都当成了字符;"
"由于 * 有特殊含义,在使用 “expr” 实现运算的时候,必须使用 \* 转义,但使用 let [] (()) 的时候不必转义!"
①、使用 let 实现算术运算:
root@zhengzelin:~# a=1
root@zhengzelin:~# b=2
root@zhengzelin:~# let c=a+b 或 let c=$a+$b
root@zhengzelin:~# echo $c
3
root@zhengzelin:~# let c=a*b
root@zhengzelin:~# echo $c
2
②、使用 expr 结合 ( ) 实现算术运算:
expr 他本身就是一个运算命令:
root@zhengzelin:~# expr 1 + 2
3
但是在脚本里可不能这样参加运算;得这样:
root@zhengzelin:~# a=1
root@zhengzelin:~# b=2
root@zhengzelin:~# c=$(expr $a + $b)
root@zhengzelin:~# echo $c
3
# 关于乘法:
root@zhengzelin:~# c=$(expr $a * $b)
expr: syntax error
root@zhengzelin:~# c=$(expr $a \* $b);echo $c
2
③、使用 [ ] 实现算术运算:
root@zhengzelin:~# a=1
root@zhengzelin:~# b=2
root@zhengzelin:~# c=$[a+b] 或 c=$[$a+$b]
root@zhengzelin