【发布时间】:2020-06-02 11:21:36
【问题描述】:
我需要从一个 190GB 的大平面文件(仅错误日志)中提取电子邮件地址,并将其剪切成 5mb 的文件。 (有 152,353,216 行)
grep 命令运行良好,但内存很快就会饱和,我最终会出错。
文件的内容没有格式化,所以我必须使用正则表达式。
grep -r -E -h -o "\b(pattern)\b" /dir/* > outs.txt
如何逐个处理文件?
【问题讨论】:
-
您遇到了什么错误?我很好奇为什么内存消耗会增加,以及是什么让您认为问题与内存有关。
-
@TomFenech grep 在分析了 20,000 个文件后最终不再找到模式,并且只显示文件的名称。处理在 RAID10 中的 NAS 上启动。
标签: linux shell unix command-line grep