如何从庞大的数据文件中提取特定行?

时间:2015-06-22 11:19:10

标签: text-files extract large-files data-files

我有一个非常大的数据文件,大约32GB。该文件由大约130k行组成,每行主要包含数字,但也有很少的字符。

我需要执行的任务非常明确:我必须提取20行并将它们写入新的文本文件。

我知道要复制的20行中每一行的确切行号。

所以问题是:如何从大文件中提取特定行号的内容?我在Windows上。是否有可以进行此类操作的工具,或者我需要编写一些代码?

如果没有直接的方法,我认为可能的方法是首先提取原始文件的小块(以便每个块包含一行或多行提取),然后使用标准编辑器找到每个块内的行。在这种情况下,问题是:如何在Windows上逐行拆分大文件?我使用名为HJ-Split的工具,它可以很好地处理大文件,但它只能按大小分割,而不能按行分割。

1 个答案:

答案 0 :(得分:0)

安装[1] Babun Shell(或Cygwin,但我建议使用Babun),然后按照此处所述使用sed命令:How can I extract a predetermined range of lines from a text file on Unix?

[1]安装Babun实际上只是将其解压缩到某个地方,因此您不必拥有服务器上的管理员权限。