【bashシェル】条件分岐[if]文の使い方


この記事はプロモーションを含みます。

bashシェル

ホーム > bashシェルスクリプト リファレンス

Bashシェルスクリプトにおける条件分岐「if」文の使い方を解説します。

書式

if文の書式です。

if [ 条件式 ]; then
	条件式が真(True)の場合に実行する処理
fi

条件分岐で使える比較演算子

Bashシェルで、if文を使う際に使用可能な比較演算子です。
*文字列と数値で使用する演算子が異なります。

文字列の比較

文字列を比較する際に使用する演算子です。

比較演算子説明
文字列A = 文字列B文字列A と 文字列B が等しければ真(True)
文字列A != 文字列B文字列A と 文字列B が等しくなければ真(True)
-n 文字列X文字列X の長さが「1」以上であれば真(True)
-z 文字列X文字列X の長さが「0」であれば真(True)

数値の比較

数値を比較する際に使用する演算子です。

比較演算子説明
数値A -eq 数値B数値A と 数値B が等しければ真(True):equal
数値A -nq 数値B数値A と 数値B が等しくなければ真(True):not equal
数値A -lt 数値B数値A が 数値B より小さければ真(True):less than
数値A -le 数値B数値A が 数値B 以下なら真(True):less than or equal
数値A -gt 数値B数値A が 数値B より大きければ真(True):greater than
数値A -ge 数値B数値A が 数値B 以上なら真(True):greater than or equal

if文のサンプル

if文で条件分岐を行うサンプルです。

文字列の条件分岐例

文字列が一致する場合のサンプルです。

#!/bin/bash

var=sample

if [ $var = sample ]; then
	echo 文字列は一致します。
fi

シェルの実行結果です。
文字列が一致するため、「文字列は一致します。」と表示されます。

[root@SYUTAKUWEB01 workspace]# sh sample.sh
文字列は一致します。

文字列が一致しない場合のサンプルです。

#!/bin/bash

var=test

if [ $var = sample ]; then
	echo 文字列は一致します。
fi

シェルの実行結果です。
文字列が一致しないため、何も表示されません。

[root@SYUTAKUWEB01 workspace]# sh sample.sh
[root@SYUTAKUWEB01 workspace]#

数値の条件分岐例

数値が一致する場合のサンプルです。

#!/bin/bash

var=777

if [ $var -eq 777 ]; then
	echo 数値は一致します。
fi

シェルの実行結果です。
数値が一致するため、「数値は一致します。」と表示されます。

[root@SYUTAKUWEB01 workspace]# sh sample.sh
数値は一致します。

数値が一致しない場合のサンプルです。

#!/bin/bash

var=100

if [ $var -eq 777 ]; then
	echo 数値は一致します。
fi

シェルの実行結果です。
文数値が一致しないため、何も表示されません。

[root@SYUTAKUWEB01 workspace]# sh sample.sh
[root@SYUTAKUWEB01 workspace]#

コメント

タイトルとURLをコピーしました