进行大文件的分片操作(split),合并(cat/copy)

Posted lisongyu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进行大文件的分片操作(split),合并(cat/copy)相关的知识,希望对你有一定的参考价值。

进行大文件的分片操作(split),合并(cat/copy)

  • 由于工作的需要,当我们的系统产生了超过内存的日志文件时,当我们使用工具对文件进行读取数据时,会直接报异常,无法进行读取.所以我们要前置的对文件进行分片操作.split(linux命令)在windows中最好前置下载个cmder进行操作.
  • 进入cmder,切换到需要分割的文件地址

技术图片

  • 可以看到这个文件有1.8g;这个文件如果要直接使用文件打开的话,直接就会报错.

技术图片

  • 使用split 命令,按照每个文件51200kb的大小进行解析,默认前缀为"wx.log.","-d"代表后面跟的数字00开始自增
split -b 51200k -d wx.log wx.log.
split [-b ][-C ][-][-l][-d][要切割的文件][输出文件名前缀][-a ]

-b<字节>:指定按多少字节进行拆分,也可以指定 K、M、G、T 等单位。
-<行数>或-l<行数>:指定每多少行要拆分成一个文件。
输出文件名前缀:设置拆分后的文件的名称前缀,split 会自动在前缀后加上编号,默认从 aa 开始。
-a<后缀长度>:默认的后缀长度是 2,也就是按 aa、ab、ac 这样的格式依次编号。
-d : 后缀使用数字自增

技术图片

  • 分割好了,就可以进行单文件读取了.
  • 当我们想要合并数据的时候,由于前缀都一样,只是后缀不一样的了.
  • 我们可以使用cat(linux)或copy(windows)来进行合并
cat wx.log.* > wx_new.log
copy wx.log.*  wx_new.log

技术图片

  • 最后校验一下文件的完整性是否一致,可以看到md5值是相同的.
md5sum [文件名]

技术图片

以上是关于进行大文件的分片操作(split),合并(cat/copy)的主要内容,如果未能解决你的问题,请参考以下文章

Linux 之 split 切分大文件 cat 合并多个小文件

大文件上传前台分片后后台合并的问题

大数据知识MapReduce运行流程

plupload 大文件分片上传与PHP分片合并探索

php在操作断点续传时文件如何分割合并

Linux命令 分割文件 split 合并文件 join