![如何在Shell脚本中进行浮点运算?](https://linux22.com/image/75429/%E5%A6%82%E4%BD%95%E5%9C%A8Shell%E8%84%9A%E6%9C%AC%E4%B8%AD%E8%BF%9B%E8%A1%8C%E6%B5%AE%E7%82%B9%E8%BF%90%E7%AE%97%EF%BC%9F%20.png)
time_value=$(($large / 1000))
$large
可能是60
或57
。我期待着57/1000=0.057
。但我得到了0
。那么,有什么办法可以做到这一点吗?
答案1
尝试
time_value=$((echo scale=3 ; echo $large / 1000) | bc )
在哪里
scale=
3 告诉 bc 在点/逗号后使用 3 位数字echo $large / 1000
只需计算除法
请注意,一旦设置了浮点,就必须随身携带它。
如果$time_value
上面的值低于 0,则不能在通常模式中使用$(( ))
。