質問: 10÷100=0.1 です。これをシェルの `printf` コマンドで出力しようと思って以下の通り実行すると結果は `0.000000` と表示されてしまいます。 ``` printf "%f" $((10/100)) 0.000000 ``` どうすれば `0.100000` と表示できるでしょうか?(あくまで、10, 100 は変数に入れて計算するので、`%f` に渡す値を自分で計算して0.1と入れるのはなしでお願いします。) 予測ですが、多分 `10/100` が整数部分の `0` しか返してないと思いました。 C言語とかなら型宣言できますけど、シェルってどうすればよいのでしょうか?
回答: シェルbash で小数の計算するコマンドによると算術式展開や`expr`、`let`などの代わりに`bc`コマンドを使うと良いようです。 以下のような感じになります。 ``` $ printf "%f" $(echo "scale=1; 10 / 100" | bc) 0.100000 ```