Bashで整数の加減乗除はどうやるの? -- Bashの算術展開と算術評価
Bashの算術展開
Bashでも整数の算術計算ができます。詳しくはman 1 bashのArithmetic ExpansionとArithmetic Evaluationのところを読むといいのですが、少し例を挙げてみたいと思います。
加減乗除
加減乗除と剰余とべき乗の計算ができます。
$ var=10 $ echo $((var + 3)) 13 $ echo $((var - 3)) 7 $ echo $((var * 3)) 30 $ echo $((var / 3)) 3 $ echo $((var % 3)) 1 $ echo $((var ** 3)) 1000 $
インクリメント、デクリメント
$ var=3 $ echo $((var++)) 3 $ echo ${var} 4 $ echo $((++var)) 5 $ echo ${var} 5 $ echo $((var--)) 5 $ echo ${var} 4 $ echo $((--var)) 3 $ echo ${var} 3 $
Bashの算術評価
Bashでは制御構造の中で算術評価ができます。例を挙げてみたいと思います。
ループ
$ for ((i = 0; i < 4; i++)); do echo ${i}; done 0 1 2 3 $ i=0 $ while ((i < 4)); do echo $((i++)); done 0 1 2 3 $
分岐
$ var=10 $ if ((var < 100)); then echo "true"; else echo "false"; fi true $ var=1000 $ if ((var < 100)); then echo "true"; else echo "false"; fi false $