私は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