eze*_*zon 5 shell standards posix
该标准描述了的case声明说:
The format for the case construct is as follows:
case word in
[(]pattern1) compound-list;;
[[(]pattern[ | pattern] ... ) compound-list;;] ...
[[(]pattern[ | pattern] ... ) compound-list]
esac
The ";;" is optional for the last compound-list.
Run Code Online (Sandbox Code Playgroud)
为什么不能成为pattern1多重模式呢?这似乎相当武断,虽然我很确定它一定不是.
谢谢!
我认为你误解了他们的意思。您链接到的页面上的语法没有显示出这样的区别:
case_clause : 换行 case_list Esac 中的案例 WORD 换行符
| 换行符中的案例 WORD 换行符 case_list_ns Esac
| 换行符 Esac 中的案例 WORD 换行符
;
case_list_ns : case_list case_item_ns
| case_item_ns
;
案例列表 : 案例列表 案例项目
| 案例项
;
case_item_ns :模式 ')' 换行符
| 模式 ')'compound_list 换行符
| '('模式')'换行
| '('pattern')'compound_list 换行符
;
case_item : 模式 ')' 换行 DSEMI 换行
| 模式 ')'compound_list DSEMI 换行符
| '('pattern')' 换行 DSEMI 换行
| '('pattern')'compound_list DSEMI 换行符
;
pattern : WORD /* 应用规则 4 */
| 模式“|” WORD /* 不应用规则 4 */
| 归档时间: |
|
| 查看次数: |
139 次 |
| 最近记录: |