awk vs nawk vs mawk处理繁重的文件

时间:2015-10-29 23:43:34

标签: awk

我正在处理几个非常大的文件,这些文件会让macbook pro节流。 我正在考虑使用更快的awk实现。 我听说过awk要快得多。我可以只安装mawk,将awk语法更改为mawk并使用它吗?这会简单加快处理速度吗?

2 个答案:

答案 0 :(得分:0)

首先,如果可以,设置LC_ALL = C并查看是否提供了足够的提升:

$ LC_ALL=C awk 'foo'

mawk 非常快,但我发现它并不一定按预期运行 awk 脚本 - 我总是需要仔细检查它是否正在执行对的。

在过去的几年里,我似乎已经提高了它的速度 - ymmv。

答案 1 :(得分:0)

mawk 1.9.9.6(mawk-2 beta)是迄今为止最快的。

我使用 URI-quote-plus 编码的速度甚至比 Python3 中的内置模块还要快。如今,我的 2018 Mac 用了大约 13.9 秒来遍历一个 1230 万行、大小为 1.82GB 的文本文件,并精确计算出每个字节,

加上,每个 UTF-8 代码点,全部 12 亿个,

尽管它本身不支持 Unicode。

即使是 Unicode 感知模式下的 gnu-awk 或 macOS 内置 wc -lm 也没有那么快。