文件分割与合并

在进行文件传输的过程中,因为网络和文件大小的限制。经常会遇到文件传输失败的情况。针对文件传输失败的情况。大文件由于其传输时间长,一旦传输失败,重新传输费时且不一定能保证再次传输成功。针对这种情况,可以考虑将文件分割成小文件的方式进行传输,减少因传输失败或传输大小限制导致的问题。

split 文件分割

在Linux中,进行文件分割主要是通过split命令进行的操作

split <optional> <input> <prefix>
  • -a suffix_length: 指定分割文件的后缀长度来形成文件名后缀,默认为2。
  • -d: 指定后缀为数字而不是字母,默认字母
  • -b byte_count[K|k|M|m|G|g]: 指定分割文件的字节数,根据字节数进行文件分割
  • -l line_count: 根据行数拆分文件,每个文件line_count行
  • -n chunk_count: 将文件拆分为chunk_count个文件,前n-1文件具有(input fize size / chunk_count)大小字节,最后一个文件包含剩余字节
  • -p pattern: 输入行匹配到对应的pattern时,进行分割

示例:
如我们需要将一个大小为拆分为100MB的文件

split -b 10M example.tar.gz example.tar.gz.

执行以上命令将会生成形如以下方式命名的文件

example.tar.gz.aa
example.tar.gz.ab
...
example.tar.gz.ba
example.tar.gz.bb
...

文件合并

将分割的文件上传到指定路径后,针对一些特殊的文件,我们需要将其合并后才能正常读取文件内容。文件的读取可以通过cat读取文件内容将输出量覆写到指定文件的方式进行合并。

如,针对上文将文件分割为example.tar.gz.xx内容的情况下,可以通过如下命令进行合并:

cat example.tar.gz.* > example.tar.gz

相关推荐

  1. 文件分割合并

    2024-01-11 20:24:01       62 阅读
  2. vue实现文件分割合并

    2024-01-11 20:24:01       37 阅读
  3. Linux分割合并文件

    2024-01-11 20:24:01       57 阅读
  4. Git分支合并导致文件异常

    2024-01-11 20:24:01       51 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 20:24:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 20:24:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 20:24:01       82 阅读
  4. Python语言-面向对象

    2024-01-11 20:24:01       91 阅读

热门阅读

  1. 力扣_数组25—柱状图中最大的矩形

    2024-01-11 20:24:01       44 阅读
  2. 线程池如何知道一个线程是否执行完成

    2024-01-11 20:24:01       55 阅读
  3. Mxnet导出onnx模型

    2024-01-11 20:24:01       46 阅读
  4. Python常用日期函数和日期处理方法

    2024-01-11 20:24:01       53 阅读
  5. Docker 概述

    2024-01-11 20:24:01       50 阅读