gpt4 book ai didi

linux - 如何使用 grep 处理大量(数百万)文件来搜索字符串并在几分钟内获得结果

转载 作者:IT王子 更新时间:2023-10-29 00:26:38 26 4
gpt4 key购买 nike

这个问题与 How to use grep efficiently?

我正在尝试在包含 8-10 百万个小(~2-3kb)纯文本文件的文件夹中搜索“字符串”。我需要知道所有包含“字符串”的文件。

一开始我用的是这个

grep "string"

那太慢了。

然后我试了一下

grep * "string" {} \; -print

根据链接问题,我使用了这个

 find . | xargs -0 -n1 -P8 grep -H "string"

我收到这个错误:

xargs: argument line too long

有谁知道可以相对更快地完成这项任务的方法吗?

我在具有超过 50GB 可用 RAM 和 14 核 CPU 的服务器计算机上运行此搜索。我希望我能以某种方式使用所有处理能力来更快地运行此搜索。

最佳答案

您应该删除 -0 参数到 xargs 并改为 -n 参数:

... | xargs -n16 ...

关于linux - 如何使用 grep 处理大量(数百万)文件来搜索字符串并在几分钟内获得结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19694379/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com