用bash中的变量划分多个数字

时间:2017-12-28 22:38:51

标签: bash floating-point integer

如果用户输入圆周,我需要计算圆的面积。 这就是我所拥有的,但它不起作用:

let radius=$circumference/(2*3.1415) 

let area=3.1415*$radius*$radius

1 个答案:

答案 0 :(得分:2)

正如评论指出的那样,bash不会做浮动。我尝试了一个简单的echo+bc解决方案,但您也可以使用awk和其他人。

radius=$(echo $circumference/\(2*3.1415\) | bc -l)

area=$(echo 3.1415*$radius*$radius | bc -l)

不优雅或特别便携,但它有效。

编辑:我创建了一个test.sh文件:

#!/bin/bash

circumference=4

radius=$(echo $circumference/\(2*3.1415\) | bc -l)

area=$(echo 3.1415*$radius*$radius | bc -l)

echo $radius $area

当我在终端上bash test.sh时,我得到了:

.63663854846410950183 1.27327709692821900365