bashで小数点以下の計算をする方法

こんにちは、minoruです。

Ubuntu(Xubuntu含む)などLinuxのコマンドで使われるBashでは、通常小数点以下の計算ができないため、小数点以下のある計算をする場合には以下のようなコマンドを使う。

echo "scale=2; 10/33" | bc | sed -e s/^\./0\./

まず、最初のecho "scale=2; 10/33"の部分で小数点以下2桁を表示するコマンドscaleを書き、続いて10割る33と表示する文字列を書いている。それをパイプでbcと言う計算コマンドに渡し、最初の0が表示されない仕様なので、sedを使って頭に0を付け足している。

計算結果を変数に入れたりする場合は、グレイブアクセント(Shift+@キー)で囲ってあげると良い。

a=`echo "scale=2; 10/33" | bc | sed -e "s/^\./0\./"`

LinuxやUbuntuをこれから試してみたい!と言う人や、今までWindowsで使っていたPCをWindowsは残したままLinuxやUbuntuを活用してみたい人は以下の本がおすすめ!
https://amzn.to/3Vl1oNx

LinuxやUbuntuを使おうとして、初心者の人が最初に「?」となりやすいのがコマンドでしょう。使い方がわかればこれほど簡単で便利なものはありませんが、最初は戸惑うのが普通です。そんな初心者に向けてマンガで超わかりやすいコマンドについて学べるのはシス管系女子みんとちゃんの本!
https://amzn.to/3FMTx5v

シェアする

  • このエントリーをはてなブックマークに追加

フォローする