ZDNet Japan Brand Site:
ZDNet Japan
builder

if条件の複数指定でシンプルな構文にしたい

Bシェルのif条件文で、「変数"$VAL"の値が"A"でも"B"でも"C"でもなかった場合はエラーを出力してexitさせる」という処理を行いたいとします。もっともシンプルな構文はどういったものになるでしょうか?

OKWave  2008年1月21日 14時00分
if条件の複数指定

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

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

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

宜しくお願い致します。

良回答

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

とか


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

とかいうのはどうでしょうか。

記事提供:OKWave

「Linux系OS」 のバックナンバー

http://japan.zdnet.com/reference/linux/story/0,3800077750,20365261,00.htm
if条件の複数指定でシンプルな構文にしたい

ZDNet Japan Essential Topic

ZDNet Japan イベント

ZDNet Japan ニューズレター

企業情報システムの選択、導入、運用管理に役立つ情報を毎朝メール配信します。

ニューズレターの登録・登録情報変更 »