我正在尝试在Linux系统上进行计算。 我有两个不同的数字,用一个变量定义
class ChildBundle extends Bundle
{
function getParent()
{
return 'ParentBundle';
}
}
$1= 1024
我现在的任务是计算1024中的20的百分比。计算结果为(100/1024 * 20) 问题是,bash始终用这种类型的代码表示0:
$2= 20
有人知道我该如何计算吗?
答案 0 :(得分:1)
您可以使用bc -l
命令执行此操作。
例如。 echo "100/1024*20" | bc -l
给出1.953125
答案 1 :(得分:1)
您的尝试无效,因为您正在执行整数计算:
100/1024 = 0 // integer calculation
100/1024 = 0.09765625 // floating point calculation
因此,您需要以某种方式说明要进行浮点计算。
您可以按照以下步骤进行操作:
awk 'BEGIN {print (100/1024*20)}'
可以在this post中找到更多示例。
答案 2 :(得分:-1)
您可以告诉bc
将结果显示在小数点后2位(或所需的位数)中。
使用以下命令
echo "scale=8; 100 / $1 * $2" | bc
在我的计算机上,它报告如下内容:
1.95312500
您可以通过将正确的numbr传递给'scale'属性来更改小数位数。