将2个数组索引变量乘以shell编程

时间:2014-01-10 15:15:53

标签: shell debugging ubuntu command-line

如何在给定以下

的情况下乘以2个数组索引变量
foo=(1 2)
bar=(0.1 0.2)

foobar=$((foo[1]*price[1])) # this is wrong

echo "$foobar"

当前输出:0

正确/预期输出:0.4

1 个答案:

答案 0 :(得分:3)

bash只进行整数运算。对于浮点数学,通常的做法是使用bc

$ foobar=$(echo "${foo[1]} * ${bar[1]}" | bc)
$ echo $foobar
.4

请注意取消引用数组元素所需的语法:需要使用大括号将变量名称和索引组合在一起。