0Pricing
Linux Command Line & Bash Scripting Mastery · 课时

归档与压缩(tar、gzip、unzip)

学习如何使用“tar”、“gzip”和“unzip”等标准 Linux 工具创建、提取和压缩归档文件。

归档与压缩(tar、gzip、unzip) 是 CoddyKit 上的免费 Linux Command Line & Bash Scripting Mastery 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Linux Command Line & Bash Scripting Mastery 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Linux Command Line & Bash Scripting Mastery 课程共包含 4 节课。

为什么要归档和压缩?

处理大量文件或大文件时,归档和压缩会非常有用!

  • 归档:将多个文件组合成一个文件,使其更易于管理、移动或备份。
  • 压缩:减小文件或归档文件的大小,节省磁盘空间并加快网络传输速度。

这些工具对于在 Linux 中高效管理文件至关重要。

介绍用于归档的“tar”

tar 命令(Tape ARchiver 的缩写)是 Linux 中用于将文件和目录组合成单个归档文件的标准工具。

默认情况下,它不会压缩文件,但这是压缩前的第一步。您可以把它想象成将许多物品装进一个箱子。

创建“tar”归档文件

要创建 .tar 归档文件,请使用 -c(创建)、-v(详细显示进度)和 -f(文件名)选项。

下面创建名为 my_files.tar 的归档文件,其中包含 file1.txt 和 file2.txt。

echo "Content for file1" > file1.txt
echo "Content for file2" > file2.txt

tar -cvf my_files.tar file1.txt file2.txt

ls -l

从“tar”归档文件中提取内容

拥有 .tar 归档文件后,您通常需要提取其中的内容。请使用 -x(提取)选项,并同时使用 -v 和 -f。

下面先删除原始文件,然后从 my_files.tar 归档文件中提取它们。

rm file1.txt file2.txt

tar -xvf my_files.tar

ls -l

列出“tar”归档文件内容

有时,您只想查看归档文件中的内容,而不想提取所有文件。此时 -t(列出)选项非常合适。

它会显示存储在 .tar 文件中的文件和目录名称。

tar -tvf my_files.tar

介绍用于压缩的“gzip”

gzip 是一种常用的 Linux 工具,用于压缩单个文件。它通常会将原始文件替换为 .gz 压缩版本。

压缩文件占用的磁盘空间更少,传输速度也更快。

使用“gzip”进行压缩

要压缩文件,只需运行 gzip,后面跟上文件名。原始文件会被其压缩后的 .gz 版本替换。

下面压缩我们的 my_files.tar 归档文件。

gzip my_files.tar

ls -l

使用“gunzip”解压缩

要解压缩 .gz 文件并恢复原始文件,请使用 gunzip 命令。它的工作方式与 gzip 类似,但方向相反。

下面将 my_files.tar.gz 解压缩还原为 my_files.tar。

gunzip my_files.tar.gz

ls -l

组合使用“tar”和“gzip”

将归档和压缩合并为一步操作非常常见。tar 提供了内置选项 -z,用于使用 gzip 进行压缩。

这会创建一个 .tar.gz(或 .tgz)文件,也就是使用 gzip 压缩的 tar 归档文件。这通常是打包文件最高效的方式。

echo "Another file" > another.txt

tar -czvf my_combined.tar.gz file1.txt file2.txt another.txt

ls -l

快速检查:提取组合归档文件

您有一个名为 project_docs.tar.gz 的文件。哪个命令可以正确提取其内容?

回顾:归档与压缩

做得很好!您已经学会了如何在 Linux 中处理归档文件和压缩文件:

  • tar:用于创建(-c)、提取(-x)和列出(-t)归档文件(.tar)。
  • gzip:将单个文件压缩为 .gz 格式。
  • gunzip:解压缩 .gz 文件。
  • 结合 tar 使用 -z 选项,可以创建或提取 .tar.gz(或 .tgz)归档文件,将归档与 gzip 压缩结合起来。

这些命令是高效管理任何 Linux 系统中文件的基础!

常见问题解答

「归档与压缩(tar、gzip、unzip)」课时是免费的吗?

是的 — 「归档与压缩(tar、gzip、unzip)」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Linux Command Line & Bash Scripting Mastery 课程的其余内容,请升级到 CoddyKit PRO。 Linux Command Line & Bash Scripting Mastery 课程共包含 4 节课。

「归档与压缩(tar、gzip、unzip)」这节课中我会学到什么?

学习如何使用“tar”、“gzip”和“unzip”等标准 Linux 工具创建、提取和压缩归档文件。 你通过在浏览器中直接运行的动手代码来练习 Linux Command Line & Bash Scripting Mastery,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Linux Command Line & Bash Scripting Mastery 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Linux Command Line & Bash Scripting Mastery 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「归档与压缩(tar、gzip、unzip)」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Linux Command Line & Bash Scripting Mastery 课中编写并运行代码吗?

能。每节 Linux Command Line & Bash Scripting Mastery 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 高级文本处理(sed、awk)
  2. 归档与压缩(tar、gzip、unzip)
  3. 磁盘使用情况与系统信息(df、du、uname)
  4. 数据排序与去重(sort、uniq、cut)
← 返回 Linux Command Line & Bash Scripting Mastery