【发布时间】:2012-06-05 18:54:54
【问题描述】:
使用hg grep时如何指定--exclude/-X参数?
我已经尝试过我遇到的所有类型的裸语法和模式语法(包括我知道的一些正则表达式方言),但我什至无法使用最简单的示例。
我最感兴趣的是从搜索中过滤掉一些二进制文件和缩小的 JavaScript 文件 (*.min.js)。
如果相关的话,我在 Windows 上。
【问题讨论】:
使用hg grep时如何指定--exclude/-X参数?
我已经尝试过我遇到的所有类型的裸语法和模式语法(包括我知道的一些正则表达式方言),但我什至无法使用最简单的示例。
我最感兴趣的是从搜索中过滤掉一些二进制文件和缩小的 JavaScript 文件 (*.min.js)。
如果相关的话,我在 Windows 上。
【问题讨论】:
见hg help patterns。默认情况下,模式被视为 shell glob。
如果你想使用正则表达式,你可以试试这样:
hg grep -X "re:.*\.min\.js$" <search term>
【讨论】:
hg help 会很快让你到达那里。
hg help,但没有注意到hg help patterns 部分。 hg help grep 部分中的注释(“参见:hg 帮助模式”)会很有帮助。
hg help patterns 解释说 Globs are rooted at the current directory; a glob such as "*.c" will only match files in the current directory ending with ".c". 因此,要使用 glob 匹配扩展名为 .min.js 的任何文件,您需要一个前导通配符,例如 --exclude '**/*.min.js'
【讨论】: