我已经开始使用 ack,它比 grep 快得多。但是使用 ack 我想搜索文件名而不是文件内容。有办法吗?
答案1
使用正确的工具来完成正确的工作。如果您要搜索文件名,请使用“find”:
$ # search for all *.txt file in current directory
$ find . -iname "*.txt"
答案2
ack -g REGEX
打印相对路径+文件名与 REGEX 匹配的文件
答案3
我同意,如果你只是搜索 *.txt 文件,使用 find 是有意义的。但是,ack 具有强大的文件类型检测功能,因此你可以使用
ack -f --perl
它将根据文件名 (*.pm、*.pl、*.t 和 *.pod) 和 shebang 行来查找所有 Perl 文件。
答案4
你可以做 :
ack -f | ack "filename.ext"