1, Linux shell 变量的基本运算
1.1 let 命令能够用于直接执行基本操做:
当我使用 let 的时候,咱们不使用 $ 符号引用变量。let
1.2 “ [ ] “运算符跟 let 命令很类似:
“[ ]” 运算符里面能够使用 $ 符号引用变量,同时支持变量名与运算符之间不带空格。$[[ ]]
1.3 ” (( )) ” 运算符跟 ” [ ] ” 运算符同样:
一样支持使用 $ 符号引用变量进行基本运算,同时支持变量名与运算符之间不带空格。$(())
1.4 “expr” 命令一样能够用于变量的基本运算:
“expr” 命令一样支持 $ 符号引用变量进行基本运算,可是变量与运算符之间必须使用空格做为分隔符;
在使用 “expr” 命令对变量进行运算后,整个表达式必须使用 “ · expression · ” 的模式赋值给变量,即包含在 ” ` ” 符里面, 而且等效于 “ $( expression ) ” 模式。
上面所述的四种shell中执行变量运算的方式中不支持浮点运算!
2, Linux shell 中使用 bc 命令实现高级数学运算:
bc 命令使用 标准输入 stdin 做为输入;
bc 是一个支持精确的浮点运算的高级计算器;
bc 拥有至关多的输入选项,而且支持数学函数调用;
2.1 bc 命令使用标准输入 stdin 做为输入,而且支持浮点运算:
2.2 bc 命令支持运算精度设置:经过附加参数能够给 bc 指定运算精度; 附加参数使用分号 ” ; ” 做为分隔符;
使用分号 ” ; “ 加入附加参数 scale ,指定精度为位小数;
2.3 使用 bc 进行数值的记数进制间转换:
经过 ibase=value 做为附加参数,指定输入变量的记数进制; 经过 obase=value 做为附加参数,指定输出变量的记数进制;
2.4 使用 bc 调用数学公式进行高级数学运算:
” sqrt(value) ” 执行 value 的开方运算; ” value^index ” 执行 value 的幂运算;