Linuxの「case」文に「or」という概念がありますか?

Linuxの「case」文に「or」という概念がありますか?

Linuxが利用可能ケース多くの言語と同様に、次のようになります。

case ${x} in
    one)
        echo "1"
        ;;
    two)
        echo "2"
        ;;
esac

それらの一つとして同じことをすることができますか?$xまたは$yしかし、?それでは、これを想像してみてください。

case ( ${x} or ${y} ) in
    one)
        echo "1"
        ;;
    two)
        echo "2"
        ;;
esac

これは、次の場合を意味します。$xまたは$y含む一つまたは二つそれから1または2別途印刷してください。

ベストアンサー1

いいえ、しかし、値と大文字と小文字を繰り返すことができます。

for v in "$x" "$y"; do 
    case "$v" in
    one) echo "1"; break ;;
    two) echo "2"; break ;;
    esac
done

1これにより、orが2最初の一致$xとして印刷されます$y。もちろん、2つが一致する場合はどうするかを決定するのはユーザーの役割です。

おすすめ記事