HOWTO · Bash

Bash に数字を追加する

このチュートリアルでは、expr、算術展開、bc、awk を使用して bash スクリプトに数値を追加するさまざまな方法を示します。

このページの内容

このチュートリアルでは、expr、算術展開、bc、および awk を使用して bash スクリプトに数値を追加するさまざまな方法を示します。

Bash での追加に expr を使用する

expr は、指定された式を評価し、その値を標準出力に出力するために使用されるコマンドライン Unix ユーティリティです。expr は、パターンマッチングや正規表現など、整数式または文字列式を評価できます。expr は以下の構文を使用します。

$expr expression

expr を使用して bash スクリプトに 2つの整数を追加するには、次のいずれかの構文を使用します。最初の構文は引用符を使用し、2 番目の構文は括弧を使用してドル記号で始まります。

total=`expr $num1 + $num2`
total=$(expr $num1 + $num2)

= 記号の前後にはスペースがないことに注意してください。変数に値を割り当てるときにスペースがないのは、組み込みの bash 構文です。

引用符付きの expr を使用して 2つの数値を追加する bash スクリプトを作成しましょう。2つの整数 23 は、それぞれ変数 num1num2 に割り当てられます。2つの変数の合計が total 変数に割り当てられ、echo コマンドを使用して total 変数の値が標準出力に出力されます。

num1=2
num2=3
total=`expr $num1 + $num2`
echo $total

スクリプトを実行します。

bash add.sh

スクリプトを実行すると、次の出力が得られます。

5

また、括弧付きの expr を使用して 2つの整数を追加する bash スクリプトを作成しましょう。

num1=2
num2=3
total=$(expr $num1 + $num2)
echo $total

スクリプトを実行します。

bash add.sh

スクリプトが実行されると、次の出力が生成されます。

5

Bash での加算に算術展開を使用する

Linux の算術拡張では、組み込みのシェル拡張を使用して、数学計算に括弧を使用します。次の構文は、算術展開に使用されます。

$(( arithmentic expression ))

以下のスクリプトは、算術展開を使用して 2つの整数を加算する方法を示しています。

num1=2
num2=3
total=$(($num1 + $num2))
echo $total

スクリプトを実行します。

bash add_int.bash

スクリプトは以下の出力を生成します。

5

bc を使用して Bash に浮動小数点数を追加する

bc は BashCalculator の短縮形です。浮動小数点算術演算を実行するために使用されます。-l オプションは、事前定義された数学ルーチンを使用するように bc に指示します。

num1=1.1
num2=1.4
echo $num1 + $num2 | bc -l

スクリプトを実行します。

bash add_float.sh

上記のスクリプトを実行すると、次の出力が生成されます。

2.5

awk を使用して Bash に浮動小数点数を追加する

以下のスクリプトを使用して、awk コマンドを使用して 2つの浮動小数点数を追加し、出力を標準出力に出力することもできます。変数 $1 の値は 1.5 で、変数 $2 の値は 3.3 です。

echo 1.5 3.3 | awk '{print $1 + $2}'

スクリプトを実行します。

bash add_float.sh

上記のスクリプトを実行すると、次の出力が生成されます。

4.8