1

我想做一个搜索所有 .js 和 .php 文件的命令,但忽略其中包含“Thirdparty/”和“data.js”的路径。

ack -il -G '(\.js|\.php)' 'my search string'

我尝试了 -v 但它似乎反转了所有 -G 运算符,而不仅仅是前面的运算符:

ack -il -G '(\.js|\.php)' -G '(Thirdparty|data\.js)' -v 'my search string'

我想忽略 ./Thirdparty 路径和 ./data.js 路径,但匹配所有 .js 和 .php 文件。

4

1 回答 1

0

-v 反转模式(在这种情况下为“我的搜索字符串”)而不是文件名正则表达式。对于 ack 的更新版本, --invert-file-match 选项可以满足您的要求。以下应该适用于 ack 1.96。

ack -il -G '(\.js|\.php)' --invert-file-match -G '(Thirdparty|data\.js)' 
'my search string'
于 2012-10-17T01:47:56.780 回答