bash case 语句中的方括号是什么意思?

bash case 语句中的方括号是什么意思?

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,patterncommand-list等字样排版为斜体;这也是元语法,表明这些单词是对该位置的内容的描述,而不是像case,in和那样按字面输入的单词esac

    case 单词 in[[ (]图案[| 图案]...) 命令列表 ;;]...esac

相关内容