在 bash 中,我尝试使用整数和 float 进行数学运算以获得整数结果。下面的代码片段不起作用:
x=25
y=0.2
z=$((x*y))
echo $x*$y=$z
错误信息是:
sh: line 3: 0.2: syntax error: invalid arithmetic operator (error token is ".2")
如果两个变量都是整数,则工作正常。
如何从 bash 脚本中获取“25*0.2=5”?
最佳答案
将打印输出放在 echo 中的引号中。另外,您的 z=$((x*y)) 将使 z 为空或出现错误:
25*0.2: syntax error: invalid arithmetic operator (error token is ".2")
所以...这是经过测试的代码,可能如下所示:
x=25
y=0.2
z=$(echo $x*$y | bc)
echo "$x*$y=$z"
结果将是这样的:
25*0.2=5.0
注意:我们使用bc命令进行z计算
关于bash - 具有浮点类型的数学多整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44935713/