【发布时间】:2019-03-21 09:54:48
【问题描述】:
我正在尝试在 Linux 系统上进行计算。 我确实有两个不同的数字,用变量定义
$1= 1024
$2= 20
我现在的任务是计算 1024 中的 20 有多少百分比。计算结果为 (100/1024*20) 问题是,对于这种类型的代码,bash 总是说 0:
echo $((100/$1*$2))
有人知道我如何计算这个吗?
【问题讨论】:
-
不清楚,请在您的帖子中发布更真实的输入和输出示例,然后告诉我们。
-
我觉得这里用
bc -l计算比较好 -
@Inian 更好地复制:stackoverflow.com/questions/12722095/…
-
这种“类型”的代码并不总是返回 0。考虑一下:
$((100* $2/$1))。它是同一种代码,并且给出了截断为 0 的正确百分比。也可以用同一种代码将结果四舍五入到最接近的整数,没有 bc 或 awk 等。参见stackoverflow.com/a/59414940/12559612。跨度>