小编Joh*_*ith的帖子

"无效的算术运算符"在bash中进行浮点数学运算

这是我的脚本,它相当不言自明:

d1=0.003
d2=0.0008
d1d2=$((d1 + d2))

mean1=7
mean2=5
meandiff=$((mean1 - mean2))

echo $meandiff
echo $d1d2
Run Code Online (Sandbox Code Playgroud)

但不是得到我的预期输出:0.0038 2我收到错误 Invalid Arithmetic Operator, (error token is ".003")?

unix math bash shell

15
推荐指数
3
解决办法
3万
查看次数

运行时错误(func=(main),adr=5):除以零 - 如何修复?

我的 shell 脚本给出以下错误:Runtime error (func=(main), adr=5) : Divide by zero但我不知道在哪里可以除以零?我发现其他人也有类似的问题,但解决方案非常具体,无法在我的脚本中复制它们。这是我的脚本:

dir=$folder
cd folder

shop1=$1
mean1=4.78
n1=127

shop2=$2
mean2=4.75
n2=324

grep -P -o '(?=<Rating>).*' $hotel1 |
awk '{ sub(/<Overall>/, ""; print }' |
awk '{sum+=$1; sumsq+=$1*$1} END {print sqrt(sumsq/NR - (sum/NR)**2)}'

grep -P -o '(?=<Rating>).*' $hotel2 |
awk '{ sub(/<Overall>/, ""; print }' |
awk '{sum+=$1; sumsq+=$1*$1} END {print sqrt(sumsq/NR - (sum/NR)**2)}'

md=0.03
d1=0.003
d2=0.0038
d1d2=$(echo "d1 + d2" | bc)
sq=0.069
tstat=$(echo "md / sq" | bc)
Run Code Online (Sandbox Code Playgroud)

我的脚本基本上最终会根据两个数据文件计算 …

unix bash shell

3
推荐指数
1
解决办法
4651
查看次数

标签 统计

bash ×2

shell ×2

unix ×2

math ×1