四則演算は以下の expr コマンドを使う。

$ expr 3 + 1    <-- expr 3+1 はだめ。数字と演算子の間はスペースが必要
4
$ expr 16 - 7
9
$ expr 18 / 9
2
$ expr 9 * 9
81
$ expr 17 % 4
1

括弧を使う場合はエスケープが必要。
$ expr 5 * \( 2 + 1 \)
15

bashであれば、「$((式))」で式を囲むと計算ができる。
「$((式))」だと式の結果はコマンドラインへの入力となるだけで、表示されないためechoコマンドで表示している。
$ echo -n $((3+1))
4
$ echo -n $((16-7))
9
$ echo -n $((18/9))
2
$ echo -n $(( 9 * 9 ))       <-- (( )) の間にスペースを入れてもOK
81
$ echo -n $(( 17%4 ))
1
$ echo -n $((5*(2+1)))    <-- 式には括弧も使える。
15

計算結果を変数に入れて使いたい場合は、以下のようにする。
$ Var1=`expr 1 + 1`    <-- `(バッククォート)で囲む
$ echo $Var1
2
$ Var2=$((1+3))      
$ echo $Var2
4

「expr」だと、オペランドと演算子の間にスペースが必要だったり、優先を表す括弧もエスケープが必要だったりで使いにくいので、「$((式))」の方がよいですね。


名前:
コメント:


最終更新:2011年01月16日 23:21