Linux下进行大文件的拆包与合并


简介:

当在网络上进行超大文件传输的时候就需要用到两种技术,其一是断点续传,保证文件传输得到的数据的完整性,另外一个就是进行拆包与合并。今天的主角就是拆包与合并,将一个大文件拆完之后进行逐个传输,然后再进行合并,且要保证文件的完整性。

一、普通拆包与合并

Linux 下执行命令:

split -b 1024m large_file.log  large_file.log.

将一个超大文件 large_file.log 拆成以 1024m 为单位大小的文件,切记最后面的.不要忘记了。当文件拆完之后,生成的文件名大致如下:

large_file.log.aa
large_file.log.ab
large_file.log.ac

然后在 Linux 下合并命令如下:

cat large_file.log.a* > newLog.log

这样就还原成原来的文件了,那么如果我们将拆成的小文件又传输到了 Windows 下,想在 Windows 下进行合并应该怎么做呢?
在 Windows 下应该执行 cmd 命令:

copy /B "large_file.log.aa"  +  "large_file.log.ab"  +  "large_file.log.ac"  "large_file.log"

二、使用 tar 进行压缩拆包以及合并

将 log 文件夹下所有文件进行压缩,然后进行拆包

tar cjf - log/ | split -b 1024m - log.tar.bz2.

合并包:

cat log.tar.bz2.a* | tar xj

这样就直接还原成原来的 log 文件夹了

或者使用如下命令合并为 bz2 文件格式的压缩型文件,更加方便传输,但是使用的时候需要进行手动解压,解压成 log 文件夹。

cat log.tar.bz2.a* > log.tar.bz2

文章作者: Writeup
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Writeup !
 上一篇
正向Shell和反向Shell 正向Shell和反向Shell
简介一般在获取 Shell 时分为两种,一种是正向 Shell,另一种是反向 Shell。这两种获取 Shell 的方式在渗透测试过程中都是有可能使用到的,简单来区分一下正向 Shell 和反向 Shell 的区别。如果使用客户端(攻击方)
2020-10-08
下一篇 
Linux 服务器修改默认ssh服务端口以及配置防火墙规则 Linux 服务器修改默认ssh服务端口以及配置防火墙规则
简介:为了避免自己的服务器的远程登录端口暴露在公网上不断被人扫描,所以建议大家修改默认的 ssh 远程登录的 22 端口为其他端口,减少被扫描爆破的风险。 一、修改防火墙规则其实在修改 ssh 服务之前最应该做的是修改防火墙规则,很多不严谨
2020-10-08
  目录