如何压缩和解压缩或提取 TAR 和 TAR.GZ 文件

文件压缩是在计算机上节省存储空间的好方法。 如果您熟悉 Linux 中的包,您可能遇到过 TAR 或 TAR.GZ 文件。 虽然有经验的用户知道什么是 TAR 文件以及如何提取它,但 Linux 新手在弄清楚如何处理它时可能会遇到一些困难。

在本文中,您将学习如何提取和压缩 TAR 和 TAR.GZ 文件,以及与 Linux 中的压缩和存档相关的一些常用术语。

基本术语

  • 压缩包: tarball 是在 Linux 中存储为单个文件的多个文件的集合。 tarball一词来自建筑工程中使用的煤基密封剂。 tarball 通常简称为 TAR 文件,它代表 磁带存档. 这是因为最初创建 TAR 文件类型是为了将数据存储在磁带中。
  • 压缩包: GNU gzip 是一种用于压缩文件的文件压缩算法。 gzip 的文件扩展名为 GZ,因此,您可以推断出任何以 GZ 结尾的文件都已使用 gzip 算法进行了压缩。
  • 广州: TAR.GZ 文件是使用 gzip 算法压缩的 tarball 版本。 TAR 是 tarball 的文件扩展名,而 GZ 表示 gzip。 有时也使用 TGZ 文件扩展名而不是 TAR.GZ。
  • 压缩包: 与 gzip 类似,还有其他几种文件压缩算法可用,包括 bzip2。 当您使用 bzip2 压缩 TAR 文件时,输出文件将具有以下扩展名之一:TAR.BZ2、TAR.BZ 或简单的 TBZ。

如何创建 TAR 和 TAR.GZ 文件

在备份 Linux 文件系统时,创建档案是一个重要步骤。 这样可以确保您的备份不受影响,并且如果您的系统出现任何问题,文件也不会损坏。

使用 tar 实用程序

使用 tar 命令创建压缩 tarball 的基本语法是:

tar -cvzf archive filename
tar -cvzf archive directory

…在哪里 档案 是压缩文件的名称和 文件名/目录 是要使用 tar 压缩的文件或目录。

C, v, z, 和 F 上述命令中使用的标志代表 创造, 详细, 压缩包, 和 文件名.

请注意,您需要在存档名称中传递文件扩展名(TAR 或 TAR.GZ),如下所示:

tar -cvzf new.tar.gz big-file.txt
tar -cvf new.tar big-file.txt

归档和压缩 /文件 使用 tar 的目录:

tar -cvzf new.tar.gz ~/Documents

您还可以通过创建单个 tarball 来压缩多个目录和文件。 为此:

tar -cvzf new.tar.gz ~/Documents ~/Downloads file1.txt file2.txt

使用 7-Zip 创建 TAR 和 TAR.GZ

创建 TAR 和 TAR.GZ 档案的另一种方法是使用 7-Zip。 使用 7-Zip 创建 TAR 文件的基本语法是:

7z a -ttar archive.tar /folder

…在哪里 一种 表示 添加 档案, -t 表示 类型 文件,和 柏油 代表 TAR 文件类型。

添加 /下载 使用 7-Zip 归档的目录:

7z a -ttar archive.tar /Downloads

7-Zip 不允许直接创建 TAR.GZ 文件。 这是一个两步的过程。 首先,创建一个 TAR 存档,然后将其压缩成一个 TAR.GZ。 如果您已经有一个 TAR 文件并想使用 7-Zip 对其进行压缩,请使用以下命令格式:

7z a archive.tar.gz archive.tar

上述命令采用 存档.tar 文件作为输入并使用 gzip 算法对其进行压缩。 输出是 归档文件.tar.gz 文件。

您也可以将这两个步骤组合成一个命令。

7z a -ttar -so archive.tar /Downloads | 7z a -si archive.tar.gz

-所以-si 标志表示 标准输出标准输入. 命令的第一部分写入 存档.tar 文件到标准输出。 第二个命令读取 存档.tar 来自标准输入的文件并相应地压缩它。

如何解压缩或提取 TAR 和 TAR.GZ

大多数时候,你会得到一个需要解压的压缩包。 在 Linux 上,有多种解压缩压缩档案的方法。

使用 tar 实用程序

使用 tar 提取压缩文件的基本语法是:

tar -xvzf archive.tar.gz
tar -xvf archive.tar

…在哪里 档案 是压缩文件的名称。 集体 -xvzf 标志代表 提炼, 详细, 压缩包, 和 文件名 分别。 任何跟随 -F 选项被视为输入文件。 请注意,如果您使用的是 TAR 文件,您可以删除 -z 从命令中标记。

您还可以将压缩文件的内容解压缩到特定位置,如下所示:

tar -xvzf archive.tar.gz -C /Downloads
tar -xvf archive.tar -C /Downloads

上述命令将提取 归档文件.tar.gz 文件到 /下载 文件夹。

要在解压缩之前查看存档的内容:

tar -ztvf archive.tar.gz
tar -tvf archive.tar

…在哪里 z, , v, 和 F 代表 压缩包, 列表, 详细, 和 文件名.

您可以选择要从存档中提取的文件。 为此,只需使用默认命令传递文件名。

tar -xvzf archive.tar.gz file1 file2

同样,您也可以从存档中解压缩特定目录。

tar -xvzf archive.tar.gz directory1 directory2

使用 – 排除 标志以指定您不想提取的文件的名称。

tar -xvzf archive.tar.gz --exclude=/Downloads --exclude=file1.txt

使用 7-Zip 解压缩 TAR 和 TAR.GZ 文件

您还可以使用 7-Zip 提取压缩存档。 基本语法是:

7z x archive.tar

…在哪里 X 代表 提炼.

对于 TAR.GZ 文件,您必须将压缩存档解压缩为 TAR,然后使用 7-Zip 进一步解压缩 TAR 文件。

7z x archive.tar.gz
7z x archive.tar

要使用单个命令直接提取 TAR.GZ 存档:

7z x -so archive.tar.gz | 7z x -si -ttar

以图形方式提取 TAR 和 TAR.GZ

大多数 Linux 发行版都预装了存档管理器。 使用 GUI 只需单击几下即可解压缩 TAR 和 TAR.GZ 文件。

找到压缩的存档文件并右键单击它以显示菜单。

点击 在这里提取 解压缩文件内容的选项。 默认情况下,系统会将所有文件解压到您的当前目录。

如果要将文件解压缩到其他文件夹,请单击 解压到 选项。 将打开一个文件浏览器窗口。 选择合适的位置并点击 选择 将文件提取到该位置。

在 Linux 上节省存储和带宽

当您想与其他人共享多个文件时,将这些文件压缩成一个 TAR 存档是最有效的解决方案。 除了占用更少的系统存储空间外,压缩档案在由多个用户下载时使用的服务器带宽也更少。

GZ 文件只不过是使用 gzip 算法压缩的文件。 您可以使用官方 GNU gzip 实用程序来提取压缩存档文件的内容。 如果您正在查看的文件是 TAR.GZ,则使用 tar 或 7-Zip 来提取文件将是一个更简单的选择。