case "$action" in
a|b)
echo for a or b
;;&
b|c)
echo for c or b
;;&
*)
echo for everything ELSE
;;&
esac
所以,正如你所看到的,如果它会触发前两种情况,我正在使用;;&
而不是;;
这样。
但是,这样做的一个缺点是不再“表示”“其他所有内容”,而是匹配“所有内容”;因此也会触发最后一个。action=b
*)
b
PowerShell 能够做我想做的事,因为它有一个专用的default
关键字,Bash 有类似的东西吗?
诸如此类的详尽的解决方法怎么样[!(a|b|c)])
?
做类似case 5 in 4) echo bob; ;;& esac || echo DEFAULT
但case
似乎没有返回任何代码的事情会很方便。