我有一个包含~80,000行的文件有问题。这是一个23Gb的大文件。我设法该尺寸的使用下面的命令块了类似的文件:很长的行导致问题
awk '{fn = NR % 24; print > ("file1_" fn)}' file1
然而,在这一个问题的文件该命令摊位。问题文件确实有一个非常大的30亿字符(其他文件中最长的行少于10亿),我猜这是问题所在。
我想摆脱文件中的这一长长的行,然后继续,但这证明是困难的。我虽然简单地使用以下将工作
awk 'length < 1000000000' file1 > file2
但是,这也仍然运行后3.5小时。是否有一种快速浏览文件的方法,当一行中的字符数超过了10亿,它会停止计数并移动到下一行?
我对这个问题一无所知('我认为使用c作为答案),但它听起来很有趣。 – 2013-03-18 11:03:52
您使用的是什么版本的awk('awk --version')?也许GNU awk(gawk)的更新版本就是你所需要的。 – 2013-03-18 13:08:42
这是GNU Awk 3.1.5 – user1308144 2013-03-18 13:12:02