条件が失敗した場合に基づくケース

条件が失敗した場合に基づくケース

私はbashのケース条件内のif条件に基づいて失敗する方法を探しています。たとえば、

input="foo"
VAR="1"

case $input in
foo)
    if [ $VAR = "1" ]; then

        # perform fallthrough

    else

        # do not perform fallthrough

    fi
;;
*)
    echo "fallthrough worked!"
;;
esac

上記のコードで変数VARが 。1

ベストアンサー1

あなたはできません。失敗を達成する方法は、区切り文字を(または)にcase置き換えることです。 ifに入れるのは構文エラーです。;;;&;;&

ロジック全体を一般的な条件付きで作成できます。

if [ "$input" != "foo" ] || [ "$VAR" = 1 ]; then
    one branch ...
else   # $input = "foo" && $VAR != 1
    another branch...
fi

おすすめ記事