shell编程,数学运算 expr、$[ operation ]、bc计算器
shell脚本中对数值运算的方式有三种分别如下:
一、expr 运算方式:
命令操作符:
| 或
& 与
< 小与
<= 小与等于
= 等于
!= 不等于
>= 大于等于
> 大与
+ 加
- 减
* 乘,使用时要转义,例:expr (3 \* 4)
/ 除
% 求余
也是命令操作符:
string : regex | 用regex匹配string字符串 |
match string regex | 用regex匹配string字符串 |
substr string start length | 截取字符串,start是从1开始计数的 |
index string chars | 返回chars所在的位置,没有返回0 |
length string | 返回字符串的长度 |
+ token | 将token解释为字符串,即使是个关键字 |
(expression) | 返回expression的值,expr 3 + \( 2 + 2 \) |
例:variable=$(expr 3 + 4) 用命令替换赋值给变量
注意:运算符两边要有空格 expr 2 + 2
二、方括号运算方式:
$[ operation ]
例:variable=$[ 2 * 3 ] 将运算结果赋值给变量
注意:bash shell数学运算符只支持整数运算,$[ operation ] 两边并不需要空格
三、浮点运算:
bc计算器,可以运算小数位
bc 进入bc计算器,quit退出
-q 不输出欢迎文字
scale=3 设置浮点运算的小数位
bc计算器在shell脚本中的应用:
方式一:
variable=$( echo "options; experession" | bc ) 用命令替换运行bc命令,options可以设置多个变量,expression为数学表达式。
例:var=$( echo "scale=4;var1=3;var2=5;$var1 + $var2" | bc )
方式二:内联输入重定向方法
variable=$(bc << EOF
options
statements
expressions
EOF
)
可以设置变量,运算表达式
例:
var1=20
variable=$( bc <<EOF
scale = 4
var2 = 6.2
$var1 * $var2
EOF
)
- linux向windows中put文件
- nginx服务自启动脚本
- shell编程,命令替换$(),<输入重定向,<<内联输入重定向,>输出重定向,>>追加输出重定
- shell编程,处理用户输入,选项和参数的处理getopts,shift,常见的linux命令选项
- shell编程,正则表达式BRE模式,ERE模式
- shell编程,定时运行作业at,atq,atrm,一次性定时任务
- shell编程,if-then、else,case,数值、字符串、文件类型比较检测,[ ],(()),[[ ]]
- tomcat 自启动脚本
- shell脚本对 mongo 备份并导入
- shell编程,桌面环境中的脚本,select命令,dialog包的使用,kdialog、gdialog、zenity