[英]Does bash have a `default`-equivalent for the case statement when using fallthrough?
[英]bash: if equivalent of case statement
我對Bash與其他語言中的case語句有點困惑。 也許最好直接問一個問題。 if語句等效於什么:
case $filename in
*_[0-9][0-9] )
echo "fine";;
*)
echo "fail";;
esac
謝謝
請注意,盡管case
版本是POSIX兼容的,但以下版本僅適用於采用ksh擴展名的shell,例如bash。 (POSIX sh除了提供對變量內容而不是文件系統執行fnmatch樣式模式匹配的case
以外,不提供其他任何本機機制)。
if [[ $filename = *_[0-9][0-9] ]]; then
echo "fine"
else
echo "fail"
fi
有關[[
及其與內置[
和test
命令的區別],請參見BashFAQ#31 。
另請參見POSIX sh規范中的case
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.