Bash 速習チュートリアル

Bash If...Else 文

1. Bash における if...else 文の使用方法

このセクションでは、Bash スクリプティングにおける条件分岐(Conditional Statements)の使用方法について解説します。

1.1 if 文

if 文を使用すると、特定の条件に基づいてコードを実行できます。条件が「真(true)」である場合にのみ、そのコードブロックが実行されます。

条件は角括弧 [ ] で囲み、ステートメントは if を逆綴りにした fi で閉じます。これが if ブロックの終了を示します。

実行例:if 文

# 基本的な if 文
num=15
if [ $num -gt 10 ]; then
  echo "数値は10より大きいです"
fi

2. if...else 文

if...else 文は、条件が真(true)の場合に実行するブロックと、偽(false)の場合に実行する別のブロックを定義する方法を提供します。

else キーワードによって代替のブロックを導入し、最後は fi でステートメントを閉じます。

実行例:if...else 文

# if...else 文
num=8
if [ $num -gt 10 ]; then
  echo "数値は10より大きいです"
else
  echo "数値は10以下です"
fi

3. elif 文

elif 文を使用すると、複数の条件を順番にチェックできます。最初の条件が偽(false)の場合、次の条件がチェックされます。

elif キーワードは "else if" の略であり、このステートメントも同様に fi で終了します。

実行例:elif 文

# if...elif...else 文
num=10
if [ $num -gt 10 ]; then
  echo "数値は10より大きいです"
elif [ $num -eq 10 ]; then
  echo "数値はちょうど10です"
else
  echo "数値は10未満です"
fi

4. ネストされた if 文

ネストされた if 文(Nested If Statements)とは、ある if 文の中に別の if 文を配置することで、より複雑なロジックを可能にする構造です。

それぞれの if ブロックは、対応する fi で個別に閉じる必要があります。

実行例:ネストされた if 文

# ネストされた if 文
num=5
if [ $num -gt 0 ]; then
  if [ $num -lt 10 ]; then
    echo "数値は1から9の間です"
  fi
fi