是否有工具将大文本文件(9Gb)拆分成较小的文件,以便我可以打开并浏览?
Windows(XP)附带的命令行可用的任何内容吗?
或拆分它的最佳方法是什么?我可以使用7z创建单独的卷,然后分别解压缩其中之一吗?它是可读的还是需要其他所有部分再次解压缩到大文件中?
更新资料
我整理了快速的48行python脚本,将大型文件拆分为0.5GB的文件,即使在vim中也很容易打开。我只需要浏览日志最后部分的数据(是的,这是一个日志文件)。每条记录都分为多行,因此grep不会这样做。
是否有工具将大文本文件(9Gb)拆分成较小的文件,以便我可以打开并浏览?
Windows(XP)附带的命令行可用的任何内容吗?
或拆分它的最佳方法是什么?我可以使用7z创建单独的卷,然后分别解压缩其中之一吗?它是可读的还是需要其他所有部分再次解压缩到大文件中?
更新资料
我整理了快速的48行python脚本,将大型文件拆分为0.5GB的文件,即使在vim中也很容易打开。我只需要浏览日志最后部分的数据(是的,这是一个日志文件)。每条记录都分为多行,因此grep不会这样做。
Answers:
有一个免费的Windows文件拆分器,称为HJSplit
在这里可用。该网站声称可以拆分任何类型和大小的文件,但9GB是一个大文件。
在GNU核心utils的包(可这里对于Windows)包含分割工具。这对我来说很有效 :-)
--help文档如下:
Usage: split [OPTION] [INPUT [PREFIX]]
Output fixed-size pieces of INPUT to PREFIXaa, PREFIXab, ...; default
size is 1000 lines, and default PREFIX is `x'. With no INPUT, or when INPUT
is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
-a, --suffix-length=N use suffixes of length N (default 2)
-b, --bytes=SIZE put SIZE bytes per output file
-C, --line-bytes=SIZE put at most SIZE bytes of lines per output file
-d, --numeric-suffixes use numeric suffixes instead of alphabetic
-l, --lines=NUMBER put NUMBER lines per output file
--verbose print a diagnostic to standard error just
before each output file is opened
--help display this help and exit
--version output version information and exit
SIZE may have a multiplier suffix: b for 512, k for 1K, m for 1 Meg.
例如,要将input.txt拆分为100Mb的块,仅在行尾拆分,
split input.txt -C 100m
将为您提供名为xaa,xab,xac等的输出文件。
另一个是GSplit-根据他们的站点,它可以分割非常大的文件(大于4Gb <-由于它们超过了4Gb限制,我想他们也可以分割9 Gb)。
但是,另一件事-您说您想将其拆分为较小的部分,以便可以打开并查看它。这听起来像一个很大的日志文件。
无论如何,对于打开大文本文件,我是否可以推荐EmEditor-他们声称自己可以打开非常大的文件(最大可达250 Gb),而我过去曾使用它来存储最大2 Gb的文件。但无论如何,我认为这可能是比拆分更好的解决方案。
Pieces > Type and Size
菜单。然后,选择行数和十六进制的行定界符。默认情况下,它具有Windows格式CR + LF(0x0D0x0A
)。
看看Large Text File Viewer,它非常适合像这样的事情。大多数归档器和拆分器会将文件分成几部分,这些部分不能用于独立,正确地读取每条数据,您需要将它们全部提取出来以取回文件。
大文本文件查看器是免费且可移植的。
echo. > myfile.txt
解决了818MB日志文件的问题:D
可以使用7-Zip 创建一定大小的文本文件片段(例如1.5 GB日志文件中的100 MB片段)。
关键选项是-使用“存储”而不是“压缩”-使用“拆分为卷”
您应该能够看到.001(.nnn)文件中的文本。
如果有人想要快速拆分文件,有一个在线工具可以拆分文本文件。http://www.textfilesplitter.com。
对我来说很棒。并按照我正在寻找的内容分割文件。它还说这都是HTML5客户端,因此可以安全使用。我不确定它能走多大,但我认为这取决于您机器的内存。
在决定如何处理文件之前先查看文件的一部分的想法对我而言是最佳选择。
可以通过Microsoft Store在Windows上安装Large Text Viewer App,它提供了将文件切成小块的选项。很有可能它使用了前面提到的(在后台)相同的编辑器,但是从已知来源安装它的选项比提供的替代链接更好,恕我直言。这对我来说很棒。
如果按大小分割,唯一的问题是不一定会在合适的位置分割文件,因此您可能必须对其进行编辑以捕获所需的确切内容。
grep -n
与head
和tail
查看该文件的数据块。示例,grep -n "something" file.txt
返回95625: something
。您希望看到该行及其下方的9行,总共10行:head -n 95635 file.txt | tail -n 10
。