Case 文のパイプ文字 "x|y)" とは何ですか?

Case 文のパイプ文字

私のシステムスクリプトで/etc/network/if-up.d/avahi-autoipd次の文を見つけました。

case "$ADDRFAM" in
  inet|NetworkManager) ;;
  *) exit 0
esac

case "$METHOD" in
static|dhcp|NetworkManager) ;;
*) exit 0
esac

パイプ文字は論理|「or」のように見えますが、ガイドではこの規則を見つけることができません。|コマンドパイプと算術整数として使用される「ビット単位のOR」のみが見つかります。

この状況が何の役に立つのか教えてくれる人はいますか?

ベストアンサー1

Caseステートメントのパターンセクションでは|正確にor

~からバッシュマニュアル存在するcase

Case コマンドの構文は次のとおりです。

case word in [ [(] pattern [| pattern]…) command-list ;;]… esac 

'|'は複数のパターンを区切るために使用され、「)」演算子はパターンリストを終了します。

おすすめ記事