【问题标题】:Can't add float value in bash [duplicate]无法在bash中添加浮点值[重复]
【发布时间】:2021-11-06 18:16:45
【问题描述】:

我有问题。这是我的脚本:

#!/bin/bash
x_translate=0.96
for index in {2..6..2}
do
    gmx editconf -f mgdg_1.gro -o mgdg_$index.gro -translate  $x_translate 0 0
    x_translate=$(($x_translate+0.96))
    gmx editconf -f mgdg_1.gro -o mgdg_${index+1}.gro -translate  $x_translate 0 0
    x_translate=$(($x_translate+1.92))
done

我想在变量 x_translate 中有例如 1.92 然后 3.84 然后 4.8 等等。 我收到错误第 7 行:0.96 + 0.96:语法错误:算术运算符无效(不正确的标记是“.96 + 0.96”)

例如,当我使用整数时,一切正常,但使用浮点值时,我遇到了问题 :( 这完美无缺

x_translate=1
x_translate=$(($x_translate+1))

但我不能用浮动来做到这一点

【问题讨论】:

标签: bash add


【解决方案1】:

bash 不支持浮点运算。你可以试试bc 实用程序:

x_translate=$(bc <<< "$x_translate+0.96")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-28
    • 2013-11-03
    • 2016-01-14
    • 1970-01-01
    • 2021-05-25
    • 2012-10-15
    • 1970-01-01
    相关资源
    最近更新 更多