我想在 case switch 中对匹配的行进行一些操作。而且因为字符串很长,我想使用 bash 花括号。但它不起作用。
这段没有花括号的代码按预期工作:
for i in longstr_one longstr_two; do
case $i in
longstr_one| longstr_five)
echo matched $i
;;
*)
echo no matches of $i
;;
esac
done
我得到了预期的结果:
matched longstr_one
no matches of longstr_two
但是以下带有花括号的代码没有:
for i in longstr_one longstr_two; do
case $i in
longstr_{one|,five})
echo matched $i
;;
*)
echo no matches of $i
;;
esac
done
我得到了不正确的结果:
no matches of longstr_one
no matches of longstr_two
为什么它不工作?是否可以在 bash 中的 case 选择器中使用花括号?