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つの整数 2
と 3
は、それぞれ変数 num1
と num2
に割り当てられます。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