bc

 旧OSではアップルメニューに「計算機」が登録されていましたし、Mac OS Xにも「Calculator」が用意されています。表計算ソフトを使うまでもない簡単な計算をするための、手軽な計算ソフトと言うのは、パソコンには欠かせないもののようです。このページでは、Terminalで使用する計算機ソフト「bc」を紹介します。
 Terminalでbcと入力するとbcが起動し以下のように表示されてユーザーからの入力を待ちます。

Welcome to Darwin!
[localhost:~] hiro% bc
bc 1.05
Copyright 1991, 1992, 1993, 1994, 1997, 1998 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 

 基本的な演算子はごく一般的なもので、下記のようになっています。

演算子意味使用例
+足し算1+1
-引き算2-1
*かけ算3*2
/割算2/2
%割算の余りを求める5%2
^累乗2^3

 それでは実際にこの演算子を使ってみましょう。

Welcome to Darwin!
[localhost:~] hiro% bc
bc 1.05
Copyright 1991, 1992, 1993, 1994, 1997, 1998 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
1+1
2
23-12
11
2*(3+2)
10
3/3
1
5%2
1
2^2
4

 ちゃんと計算できましたね。次に、2/3や3/2といった割算を打ち込んでみて下さい。

2/3
0
3/2
1

 こんなおかしな計算結果が表示されたと思います。実は、bcは起動時には表示する小数点以下の桁数が0にされています。そのため、このように表示されてしまいます。そこで、小数点以下の桁数の表示を変えてみましょう。変えるにはscaleという命令を使います。初期設定ではscale=0になっていますので、これを増やしてやります。

scale=3
2/3
.666
3/2
1.500

 このように小数点以下3桁まで表示するようになりました。

 bcは単なる電卓よりも高級で、変数を使う事もできます

x=11+3*4
x
23
x-1
22
x=2
y=3
x+y
5

 bcを終了してコマンド入力に戻るには、

quit
[localhost:~] hiro%

 このようにquitと打ち込みます。

 ここからはちょっとUnixな使い方ですが、パイプでbcにリダイレクトしたり、ファイルから計算式を読み込ませたりする事もできます。

[localhost:~] hiro% echo '12*13' | bc
156
[localhost:~] hiro%

 このようにTerminal上にダイレクトに計算結果を表示してくれます。
 ファイルを読み込ませるには「bc ファイル名」とします。

[localhost:~] hiro% cd terminaltest
[localhost:~/terminaltest] hiro% ls
test.txt  test2.txt test3.txt
[localhost:~/terminaltest] hiro% cat test.txt
21+12-3*2[localhost:~/terminaltest] hiro% bc test.txt
bc 1.05
Copyright 1991, 1992, 1993, 1994, 1997, 1998 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 

27

 このようにbcが起動してファイルに書かれていた計算を実行します。