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が等しくなければ真 |
- ヒント
- シェルスクリプトの比較式には「比較演算子」の左右に空白(半角スペース)が必要です(代入とは別)。
- また、比較する変数を「ダブルクォーテーション」で囲まないと、変数が空のときに構文エラーとなってしましますので注意してください。