• ベストアンサー
  • すぐに回答を!

if条件の複数指定

  • 質問No.3567467
  • 閲覧数2849
  • ありがとう数3
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 89% (119/133)

基本的な質問ですみません。

Bシェルのif条件文で、例えば
「変数"$VAL"の値が"A"でも"B"でも"C"でもなかった場合はエラーを出力してexitさせる」
という処理を行いたいとします。
("A"、"B"、"C"の場合は何もせず)

もっともシンプルな構文はどういったものになるでしょうか?

宜しくお願い致します。

質問者が選んだベストアンサー

  • 回答No.1
  • ベストアンサー

ベストアンサー率 49% (90/183)

if [ "${VAL}" != 'A' -a "${VAL}" != 'B' -a "${VAL}" != 'C' ]; then
echo 'ERROR'
fi

とか

case "${VAL}" in
'A') ;;
'B') ;;
'C') ;;
*) echo 'ERROR' ;;
esac

とかいうのはどうでしょうか。
お礼コメント
harahachi

お礼率 89% (119/133)

上の例のような形式が理想です。
動作確認も取れました。

ありがとうございます。
投稿日時:2007/12/03 15:52

その他の回答 (全1件)

  • 回答No.2

ベストアンサー率 36% (568/1571)

#! /bin/sh
if [ x$VAL == x"A" ] ; then
exit 0;
elif [ x$VAL == x"B" ] ; then
exit 0;
elif [ x$VAL == x"C" ] ; then
exit 0;
else echo error; exit 1 ;
fi
お礼コメント
harahachi

お礼率 89% (119/133)

すみません、ちょっと説明不足でしたね。
>("A"、"B"、"C"の場合は何もせず)
というのはexitすらしない、という意味でした。

ご回答ありがとうございます。
投稿日時:2007/12/03 15:53
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ