【Linux命令】--- Linux下的分卷压缩与解压

  • 在编程的艺术世界里,代码和灵感需要寻找到最佳的交融点,才能打造出令人为之惊叹的作品。
  • 而在这座秋知叶i博客的殿堂里,我们将共同追寻这种完美结合,为未来的世界留下属于我们的独特印记。

【Linux命令】--- 多核压缩命令大全(加快压缩和解压)

开发环境

  • 开发环境:ubuntu20

一、Linux下的分卷压缩与解压

  • 在处理大文件时,我们有时需要进行分卷压缩,将大文件分割成较小的部分,这样更便于传输和存储。在Linux系统中,我们可以结合使用tarsplitcat命令来实现分卷压缩与解压。

二、 参数详解

1、tar命令参数

  • -c:创建新的压缩文件。
  • -x:从压缩文件中提取文件。
  • -z:通过gzip压缩或解压。若使用其他压缩算法,需更改此参数。
  • -v:显示详细信息,查看压缩或解压的进度和结果。
  • -f:指定要处理的文件名,-f后必须紧跟文件名。

2、split命令关键参数

  • -b:指定每个分卷文件的大小,可用K、M、G等后缀表示KB、MB、GB等单位。
  • -n:指定分割的文件数量(但通常按大小分割更为实用)。

3、cat命令

  • 用于合并文件。合并分卷文件时,请确保文件顺序正确,否则合并后的文件将无法正确解压。

当然可以,将分卷压缩操作拆分为压缩和分割两个独立的部分有助于清晰地展示每个步骤。下面是根据您的建议组合并稍作调整后的版本:

三、分卷压缩操作

1. 压缩文件

首先,我们使用tar命令压缩目标文件夹。例如,压缩名为qiuzhiyei的文件夹:

bash 复制代码
tar -czvf qiuzhiyei.tar.gz qiuzhiyei/

这里的参数解释如下:

  • -c 表示创建一个新的压缩文件。
  • -z 表示使用gzip格式进行压缩。
  • -v 表示在压缩过程中显示详细信息。
  • -f 指定压缩文件的名称,后面紧跟要创建的文件名。

2. 分割压缩文件

接下来,我们使用split命令将压缩后的文件分割成多个较小的分卷。例如,如果希望每个分卷大小为10MB,可以执行以下命令:

bash 复制代码
split -b 10M qiuzhiyei.tar.gz qiuzhiyei_part_

这里的参数解释如下:

  • -b 10M 指定每个分卷的大小为10MB。
  • qiuzhiyei.tar.gz 是要分割的压缩文件名。
  • qiuzhiyei_part_ 是分割后生成的分卷文件的前缀名。

执行完上述命令后,会生成一系列以qiuzhiyei_part_为前缀的分卷文件,如qiuzhiyei_part_aaqiuzhiyei_part_ab等。每个文件大小约为10MB(最后一个文件可能小于10MB)。

四、分卷解压操作

为了解压这些分卷文件,我们需要先将它们合并成一个完整的压缩文件,然后再进行解压。

1. 合并分卷文件

使用cat命令将所有分卷文件合并成一个完整的压缩文件:

bash 复制代码
cat qiuzhiyei_part_* > qiuzhiyei_merged.tar.gz

这里的qiuzhiyei_part_*表示所有以qiuzhiyei_part_为前缀的分卷文件。通过>符号将合并后的内容输出到qiuzhiyei_merged.tar.gz文件中。

2. 解压合并后的压缩文件

最后,我们使用tar命令解压合并后的压缩文件:

bash 复制代码
tar -xzvf qiuzhiyei_merged.tar.gz

这里的参数解释如下:

  • -x 表示从压缩文件中提取文件。
  • -z 表示使用gzip格式进行解压。
  • -v 表示在解压过程中显示详细信息。
  • -f 指定要解压的压缩文件名,后面紧跟要解压的文件名。

执行完上述命令后,会生成原始的qiuzhiyei文件夹,其中包含了所有压缩前的文件和子文件夹。

相关推荐
草莓熊Lotso43 分钟前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
历程里程碑1 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
wdfk_prog8 小时前
[Linux]学习笔记系列 -- [drivers][input]input
linux·笔记·学习
盟接之桥9 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
忆~遂愿9 小时前
ops-cv 算子库深度解析:面向视觉任务的硬件优化与数据布局(NCHW/NHWC)策略
java·大数据·linux·人工智能
湘-枫叶情缘9 小时前
1990:种下那棵不落叶的树-第6集 圆明园的对话
linux·系统架构
Fcy64810 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满10 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠11 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Gary Studio11 小时前
rk芯片驱动编写
linux·学习