我将 egrep ( grep -E
) 与 PATTERN 文件一起使用。( -f path/to/file
).
这是在文本流的无限循环中完成的。这意味着我无法一次累积并将所有输入传递给 grep(如*.log
)。
有没有办法让 grep “保存”它从 PATTERN 文件构建的 NFA 以供下次运行使用?
我已经搜索过谷歌并阅读了文档,但没有运气。
我会试着多解释一下。我需要使用正则表达式来定位固定数量的字符串(这不是问题的一部分,但可以随意提出其他建议),例如 IP 地址、域等。搜索是在来自互联网的提要上完成的。您可以将其视为文本流。我不能grep
在所有输入上使用,因为它是一个流。我可以累积一大块流并grep
在其上使用(因此不在grep
每一行上使用),但这也是有限的(假设为 30 秒)。
我知道grep
正在从其所有模式(在我的情况下是从文件)构建 NFA。所以我的问题是:我可以告诉grep
为下次运行保存该 NFA,因为它不会改变吗?这将节省我每次构建 NFA 的时间。
grep ×1