Несколько вещей:
- Назначения не должны иметь пробелов вокруг
=
i=`echo "8.8007751822"|bc`
- это действительно сложный способ написания i=8.8007751822
bc
не имеет функции log
, для натурального логарифма есть только l
(а l
требует, чтобы опция -l
была включена)
Я бы переместил все в bc
вместо того, чтобы вызывать его несколько раз:
bc -l <<'EOF'
i = 8.8007751822
rws = i * 0.49237251092
rmt = 0.85 * rws
dx = (l(rws / 0.000001) / l(10)) / 720
dx
EOF
Это печатает значение dx
.