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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用bash中的变量划分多个数字相关的知识,希望对你有一定的参考价值。

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

let radius=$circumference/(2*3.1415) 

let area=3.1415*$radius*$radius
答案

正如评论指出的那样,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

以上是关于用bash中的变量划分多个数字的主要内容,如果未能解决你的问题,请参考以下文章

Bash Shell中的通配符及转义字符的使用

While循环重置Bash脚本中的数字变量[重复]

bash脚本编程之数组及随机变量

如何创建片段以重复变量编号中的代码行

如何计算bash中一列数据中的连续重复次数?

bash脚本之一(变量+数组)