【11.else if と else】ざっくりわかる「シェルスクリプト」

else if と else

else ifステートメントの使用:
else if条件の使用は、bashでは「elif」を定義します。‘elseif_example.sh’という名前のファイルを作成し、次のスクリプトを追加して、bashスクリプトでelseifがどのように定義されているかを確認します。

#!/bin/bash

echo "あなたのラッキーナンバーを入力して下さい。";
read n;

if [ "$n" -eq 101 ];then
  echo "あなたは一等賞を獲得しました";
elif [ "$n" -eq 510 ];then
  echo "あなたは二等賞を獲得しました";
elif [ "$n" -eq 999 ];then
  echo "あなたは三等賞を獲得しました";
else
  echo "すみません、またチャレンジして下さい";
fi

bashコマンドでファイルを実行します。

bash$ bash elseif_example.sh
あなたのラッキーナンバーを入力して下さい。
101
あなたは一等賞を獲得しました
bash$ bash elseif_example.sh
あなたのラッキーナンバーを入力して下さい。
999
あなたは三等賞を獲得しました
bash$ bash elseif_example.sh
あなたのラッキーナンバーを入力して下さい。
100
すみません、またチャレンジして下さい
bash$ bash elseif_example.sh
$
比較演算子使用例意味
-n-n 文字列 文字列の長さが0より大きければ真
-z-z 文字列 文字列の長さが0であれば真
=文字列A = 文字列B 文字列Aと文字列Bが等しければ真
!=文字列A != 文字列B 文字列Aと文字列Bが等しくなければ真
ヒント
シェルスクリプトの比較式には「比較演算子」の左右に空白(半角スペース)が必要です(代入とは別)。
また、比較する変数を「ダブルクォーテーション」で囲まないと、変数が空のときに構文エラーとなってしましますので注意してください。

書籍の紹介

【10.or 条件を if文で使う】ざっくりわかる「シェルスクリプト」

【10.or 条件を if文で使う】ざっくりわかる「シェルスクリプト」

【12.case 文】ざっくりわかる「シェルスクリプト」

【12.case 文】ざっくりわかる「シェルスクリプト」