加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

unix – grep -f替代大文件

发布时间:2020-12-15 18:25:57 所属栏目:安全 来源:网络整理
导读:grep -F -f file1 file2 file1是90 Mb(250万行,每行一个字) file2是45 Gb 无论我让它运行多久,该命令实际上都不会产生任何结果.显然,这超出了grep的范围. 似乎grep无法处理-f选项中的那么多查询.但是,以下命令确实产生了所需的结果: head file1 file3grep -
grep -F -f file1  file2

file1是90 Mb(250万行,每行一个字)

file2是45 Gb

无论我让它运行多久,该命令实际上都不会产生任何结果.显然,这超出了grep的范围.

似乎grep无法处理-f选项中的那么多查询.但是,以下命令确实产生了所需的结果:

head file1  >  file3
grep -F -f file3   file2

考虑到文件大小,我怀疑sed或awk是否也是合适的替代品.

我不知道其他选择……请帮忙.学习一些sql命令是否值得?这简单吗?谁能指出我正确的方向?

尝试使用LC_ALL = C.它将搜索模式从UTF-8转换为ASCII,速度提高了原始速度的140倍.我有一个26G的文件,这需要我大约12个小时才能完成几分钟.
资料来源: Grepping a huge file (80GB) any way to speed it up?

所以我做的是:

LC_ALL=C fgrep "pattern" <input >output

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读