为什么Ag比grep慢?

时间:2016-09-25 17:13:09

标签: grep ack ag

所以最近我在搜索执行快速搜索的命令行工具,我偶然发现了很多。据我所知,据说Ag比grep,ack和sift更快。 grep是最慢的。

现在我在一个文件上有300.000个字符串,我试图找到哪些字符串有一个特定的子字符串并将它们返回。

time grep 'substring' file.txt

real    0m0.030s
user    0m0.009s
sys     0m0.008s

time ag 'substring' file.txt ----> 5 secs

real    0m0.083s
user    0m0.038s
sys     0m0.014s

我做错了什么,或者ag没有按照我试图使用它的方式使用?

1 个答案:

答案 0 :(得分:0)

Grep真的很有效率。但是,即使Ag在一个系统上运行速度更快,也可归结为您正在使用的软件包和分发版。

如果您在grep上使用64位(在Cygwin软件包上),则可以在系统上使用更多内存。可能是Ag有一个使用较少资源的包。

我建议使用parallel命令,该命令允许您指定每个核心使用多少进程并加快速度。