百度
360搜索
搜狗搜索

linux怎么把大文件拆分详细介绍

在 Linux 中拆分大文件可以使用 splitdd 等命令,以下是常用方法:

方法一:使用 split 命令(推荐,简单灵活)

split 命令可按文件大小或行数拆分文件,支持文本和二进制文件,适合大多数场景。

1. 按文件大小拆分(例如拆分为 100MB 每个文件)

bash

  100M 原文件名 拆分后前缀名

  • -b:指定每个拆分文件的大小,单位支持 k(KB)、M(MB)、G(GB)等。
  • 示例:将 large_file.iso 拆分为每个 100MB 的文件,前缀为 part_:bash
      100M large_file.iso part_

    拆分后文件名为 part_aapart_abpart_ac 等(默认后缀为两位字母)。

2. 按行数拆分(例如每 1000 行一个文件)

bash

   原文件名 拆分后前缀名

  • -l:指定每个文件的行数。

3. 自定义后缀格式(数字后缀,三位长度)

bash

  100M    原文件名 拆分后前缀名

  • -d:使用数字后缀(默认是字母)。
  • -a 3:后缀长度为 3 位(如 001002)。

方法二:使用 dd 命令(适合二进制文件,按固定块拆分)

dd 命令按字节或块拆分,适合精确控制拆分大小,尤其是二进制文件(如磁盘镜像)。

按固定大小拆分(例如每个文件 100MB)

bash

 原文件名 拆分后文件名1 100M 

原文件名 拆分后文件名2 100M

  • if:输入文件。
  • of:输出文件。
  • bs:每个块的大小。
  • count=1:读取 1 个块(第一个文件)。
  • skip=1:从输入文件的第 1 个块后开始读取(第二个文件)。
  • seek=1:从输出文件的第 1 个块后开始写入(避免覆盖)。

更高效的循环拆分(自动生成多个文件):
bash

100M  

large_file.iso

part_

$split_size

stat %s " / $block_size +

" " " " " >/dev/null

方法三:使用 csplit 命令(按模式或位置拆分)

csplit 可按正则表达式或固定位置拆分文本文件(较进阶)。
按文件大小拆分(同 split,但支持更复杂模式):
bash

    原文件名  

  • -b "%03d":数字后缀(三位,如 001)。
  • -z:拆分空文件不保留。
  • $((100*1024*1024)):指定每个文件大小(字节,100MB)。

合并拆分后的文件(通用方法)

使用 cat 命令合并所有拆分文件:
bash

 拆分后前缀名*  合并后的文件名

例如合并以 part_ 开头的文件:
bash

 part_*  merged_file.iso




912 part_* > merged_file.iso

注意事项

  1. 单位问题split-b 支持 100M(兆字节)、100m(兆比特),建议用大写 M 表示 MB。
  2. 后缀格式:默认后缀为两位字母(aa, ab),用 -d 切换为数字后缀(00, 01),-a 可指定后缀长度(如 -a 4 为四位)。
  3. 权限问题:确保目标目录有写入权限。

根据需求选择合适的工具,split 是最简便的通用方案,dd 适合二进制文件精确拆分。

阅读更多 >>>  linux脚本和基本命令行

网站数据信息

"linux怎么把大文件拆分"浏览人数已经达到24次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:linux怎么把大文件拆分的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!