zsh扩展的globbing无法按预期方式工作

时间:2019-07-12 06:58:02

标签: zsh

我在extendedglob中启用了zsh,但是扩展的glob似乎无效:

$ print -l /etc/*.@(cfg|conf)
zsh: no matches found: /etc/*.@(cfg|conf)

$ print -l /etc/*.(conf)
zsh: number expected

如何使用正则表达式列出/ etc中以.conf.cfg结尾的文件?

1 个答案:

答案 0 :(得分:1)

语法错误。 @(...)构造与EXTENDED GLOB不相关,但与KSH_GLOB相关。

setopt extendedglob
print -l /etc/*.(cfg|conf)

作为旁注,您甚至不能使用正则表达式来生成文件列表。正则表达式只能用于匹配字符串。