dav*_*420 68
在bash shell中,环绕算术表达式 $(( ... ))
$ echo $(( 7 / 3 ))
2
Run Code Online (Sandbox Code Playgroud)
虽然我认为你只限于整数.
小智 38
echo 5/2 | bc -l
Run Code Online (Sandbox Code Playgroud)
2.50000000000000000000
'bc'中的'-l'选项允许浮动结果
小智 16
更好的方法是使用"bc",一个任意精度的计算器.
variable=$(echo "OPTIONS; OPERATIONS" | bc)
Run Code Online (Sandbox Code Playgroud)
例如:
my_var=$(echo "scale=5; $temp_var/100 + $temp_var2" | bc)
Run Code Online (Sandbox Code Playgroud)
其中"scale = 5"是准确度.
man bc
Run Code Online (Sandbox Code Playgroud)
附带了几个用法示例.
lib*_*ack 11
我仍然更喜欢使用DC,这是一个RPN计算器,所以快速会话将67除以18与4位数精度看起来像
>dc
4k
67
18/p
3.7222
q
>
Run Code Online (Sandbox Code Playgroud)
显然,更多可用:男子直流
小智 11
您可以使用awk,这是一种用于数据提取的实用程序/语言
例如1.2/3.4
>echo 1.2 3.4 | awk '{ print $2/$1 }'
0.352941
Run Code Online (Sandbox Code Playgroud)
在bash中,如果你的部门不需要小数,你可以这样做:
>echo $((5+6))
11
>echo $((10/2))
5
>echo $((10/3))
3
Run Code Online (Sandbox Code Playgroud)