加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

一文搞懂 Linux 中文件压缩,全指南!!

发布时间:2022-11-25 23:36:16 所属栏目:Linux 来源:网络
导读: 点击上方蓝字关注
后台回复“加群”加入Linux技术交流群
在本指南中,我们将了解zip命令linux压缩,这是一个有用的实用程序,它使我们能够指定文件列表、设置数据压缩级别和创建压缩档案。

点击上方蓝字关注

后台回复“加群”加入Linux技术交流群

在本指南中,我们将了解zip命令linux压缩,这是一个有用的实用程序,它使我们能够指定文件列表、设置数据压缩级别和创建压缩档案。

linux 压缩命令_linux压缩_linux压缩命令

虽然您已经习惯了这些命令,但最好使用示例测试文件和目录,并且您应该格外小心,以确保您仔细遵循说明。

本指南中的所有命令都适用于大多数 Linux 机器。我使用了 Ubuntu 20.04,但您可以在Raspberry Pi上运行此操作指南。所有操作方法都是通过终端执行的。您可以通过按ctrl、alt 和 t 在大多数 Linux 机器上打开终端窗口。

在 Linux 中创建 Zip 存档

linux压缩_linux压缩命令_linux 压缩命令

首先,让我们创建一些空的测试文件,然后将它们添加到存档中。我们将使用touch命令创建文件,使用ls命令检查文件是否已创建,然后使用zip命令创建基本存档。

1.创建一个测试目录,我们可以在其中安全地试用该命令。更改目录,以便您位于新目录中。

mkdir?test_directory
cd?test_directory

2.创建一些测试文件以添加到我们的存档中。请注意 3 个不同的文件后缀。

$?touch?test1.txt?test2.h?test3.c

3.列出文件以检查它们是否已正确创建。

ls

4.使用 zip 命令,为新创建的文件创建一个 ZIP 存档。要创建 ZIP 存档,我们只需使用命令zip后跟我们为存档提供的名称,然后是我们希望包含在存档中的文件的列表。以下命令将创建一个名为test_archive.zip的 ZIP 存档,并且该存档将包含三个测试文件。请注意,使用zip命令时,我们不需要在存档名称中添加存档后缀.zip 。

zip?test_archive?test1.txt?test2.h?test3.c

5.检查 ZIP 存档是否已创建。

ls

创建仅选择特定文件类型的 ZIP 存档

linux 压缩命令_linux压缩_linux压缩命令

可以为zip命令提供仅将特定文件类型添加到存档的参数。这是一个强大的功能,可以在命令行上有效地实现。

1.删除所有以前的测试档案并检查您是否还有原始的三个测试文件。请注意,与创建 ZIP 存档不同,您必须在引用现有存档时包含 .zip 文件扩展名。

rm?test_archive.zip
ls

2.创建一个新的 ZIP 存档,其中仅包含以.h和.c 结尾的测试文件。创建存档后,如果您检查其内容,它将仅包含文件test2.h和test3.c,不会包含 test1.txt。

zip?test_archive?*.h?*.c

3.检查内容少用。

less?test_archive.zip

linux压缩_linux压缩命令_linux 压缩命令

创建包含目录的 ZIP 存档

linux 压缩命令_linux压缩命令_linux压缩

通常我们需要制作一个包含包含文件的目录的 ZIP 存档,我们可以通过在zip命令中添加递归参数-r来做到这一点。

1.删除 test_directory 中的档案,但保留其他文件。为避免混淆,最好删除存档,只留下我们创建的原始文件。

rm?test_archive.zip

2.上一个目录并检查您是否不在要归档的目录中。我们不能在我们希望添加到存档的目录中。

cd
pwd

3.创建一个包含test_directory目录及其内容的 ZIP 存档。请注意,当您使用-r 参数创建存档时,您会看到一个详细的输出,详细说明命令的每个阶段,因为它下降到目录并存档文件和文件夹。

zip?-r?new_archive?test_directory

4.使用-q(安静)参数创建另一个类似的 ZIP 存档以禁用详细输出。您应该看到这次在创建此存档时没有向终端报告任何步骤。然后使用ls检查新存档是否已创建。

zip?-r?-q?new_archive2?test_directory
ls


更改 ZIP 存档的数据压缩级别

linux压缩命令_linux 压缩命令_linux压缩

默认情况下,zip命令使用 6 的压缩值,取自 0-9 的范围,其中 0 是未压缩的,9 是允许的最大压缩级别。我们可以简单地添加一个数字参数来更改压缩级别。

1.将随机数据添加到测试文件中。现在我们的测试文件 test1.txt、test2.h 和 test3.c 是空的。它们的数据字节为零,但我们可以使用快速终端命令将随机“垃圾数据”添加到文件中,该命令会将 64MB 转储到每个文件中。

cd?test_directory
head?-c?64M??test1.txt
head?-c?64M??test2.h
head?-c?64M??test3.c

2.返回上级目录,新建一个 ZIP 压缩包,默认压缩级别为 6。

cd
zip?-r?-q?archive_default_compression?test_directory

3.创建另一个具有相同内容的存档,但将压缩级别提高到 9。使用 ls -l 检查新存档和上一个存档的详细信息,您应该看到新存档的大小小于之前的存档为增加了数据压缩率。

$?zip?-r?-q?-9?archive_compressed?test_directory
$?ls?-l

提取 Zip 档案

linux压缩命令_linux压缩_linux 压缩命令

我们将创建一个名为test_archive.zip的 ZIP 存档,其中包含一个目录test_directory,该目录又包含 3 个空测试文件test1.txt、test2.h、test3.c。要提取此存档,我们将使用unzip命令。

1.创建一个包含测试文件的测试文件夹。创建测试目录和文件后,在返回父目录之前使用ls检查文件是否已创建。

mkdir?test_directory
cd?test_directory
touch?test1.txt?test2.h?test3.c
ls
cd

2.创建一个名为test_archive.zip的 ZIP 存档,其中包含 test_directory。检查是否已使用 ls 成功创建存档。zip 命令有两个参数,我们希望创建的存档的名称,以及要放入存档的文件的来源。

zip?-r?test_archive?test_directory
ls

3.删除未归档的目录。如果我们在包含test_directory 的父目录中提取 test_archive.zip ,系统会询问我们是否要替换或重命名存档。

rm?-r?test_directory

4.解压test_archive.zip文件。使用不带额外参数的unzip,我们会看到提取存档的每个步骤的详细输出报告。

unzip?test_archive.zip

将 ZIP 存档提取到指定位置

linux压缩命令_linux 压缩命令_linux压缩

通常我们希望将档案提取到不同的指定位置。我们可以在unzip 命令中添加-d参数来实现这一点。

1.将 test_archive.zip 解压到指定目录。我们可以指定相对或绝对位置。在此示例中,我们使用相对路径将内容提取到 Music 目录。我们还可以传递一个绝对路径,它提供了到目标位置的完整路径。解压存档后,移动到指定目录并使用ls检查存档是否已解压缩。

unzip?test_archive.zip?-d?./Music

2.更改目录并列出内容以验证文件已正确提取。

cd?Music
ls

通过 zip 命令的这些基本用法,您现在在 linux 终端中创建 ZIP 存档时有很多选择。能够选择特定的文件类型并能够在终端仿真器中设置压缩级别,可以快速访问这些在 GUI 应用程序中通常很难找到的强大工具。

—完—

原文:

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!