シェルスクリプトで基本計算を実行するには?

シェルスクリプトで基本計算を実行するには?

シェルでいくつかの数学演算を実行したいと思います。たとえば、

5+50*3/20 + (19*2)/7

私は試した:

 #!/bin/bash
 read equ
 echo "scale=3; $equ" | bc -l

予想出力:

 17.929

私の結果:

 17.928

答え1

bcが切り捨てられます。以下を試してください。

printf "%.3f\n" $(echo "$equ" | bc -l)

答え2

また、使用することができますperl -e "print $expr"

たとえば、perl -e "print 5+50*3/20 + (19*2)/7"出力17.9285714285714

関連情報