http://ss64.com/bash/case.html演出
case word in [ [(] pattern [| pattern]...) command-list ;;]... esac
方括号表示什么?其他网站省略它们(即没有[[(]
等)
http://www.thegeekstuff.com/2010/07/bash-case-statement/ 显示这一点:没有使用[[(]
等。
case expression in
pattern1 )
statements ;;
pattern2 )
statements ;;
...
esac
感谢下面的详细回复。我非常感谢您的澄清。
答案1
阅读权威来源:GNU bash 手册
https://www.gnu.org/software/bash/manual/bashref.html#Conditional-Constructs
方括号表示可选内容。
唯一的强制性部分是:case word in esac
-- 这是有效的 bash,但碰巧什么也不做。
答案2
方括号是文档中的常见约定,用于指示括号内的内容是可选的。他们是元语法由文档使用。
该...
表示法也是元语法;表示前面的元素可以重复。
其他常见的元语法包括用于分组和|
表示“或”的括号。在这里,括号和竖线都是语法的一部分,而方括号都是元语法的一部分。
好的手册以与语法不同的字体排版元语法。您正在阅读的网页或bash手册它在命令的描述中抄袭了这样做case
。 bash 手册将word
,pattern
和command-list
等字样排版为斜体;这也是元语法,表明这些单词是对该位置的内容的描述,而不是像case
,in
和那样按字面输入的单词esac
。
case
单词 in
[[ (
]图案[|
图案]...)
命令列表 ;;
]...esac