Linux tar 命令


简介

Linux 中,tar 命令是 最基本的命令 之一,用于 文件管理。它是 Tape Archive 的缩写,用于创建和提取归档文件。归档文件是一个压缩文件,包含一个或多个捆绑在一起的文件,以便于存储和便携。在本指南中,我们将通过示例演示如何创建、列出、编辑和提取 tar 归档文件,并介绍一些常用的 tar 命令选项。

tar 命令的语法

tar 命令接受以下语法:

$ $ tar [options][archive-file] [file or dir to be archived]

让我们看看 tar 命令提供的一些选项。

tar 命令选项

tar 命令提供以下选项:

  • -c - 创建一个归档文件。

  • -x - 提取归档文件。

  • -f - 指定归档文件的名称。

  • -v - 在终端上打印任何 tar 操作的详细信息。

  • -t - 列出归档文件中的所有文件。

  • -u - 归档文件,然后将其添加到现有的归档文件中。

  • -r - 更新 .tar 文件中位于内部的文件或目录

  • -z - 使用 gzip 压缩创建 tar 文件

  • -j - 使用 bzip2 压缩创建归档文件

  • -W - -w 选项验证归档文件。

创建归档文件

tar 实用程序允许您使用各种压缩算法(如 xzgzipbzip2)创建归档文件。公认的约定是在压缩文件上添加压缩后缀。

例如,当使用 gzip 压缩(使用“-z”选项)时,文件必须具有“.tar.gz”后缀。

$ tar -czvf sales.tar.gz  sales1.pdf sales2.pdf sales3.pdf

在此示例中,该命令根据三个 PDF 文件创建了一个名为“sales.tar.gz”的文件。

类似地,当使用 bzip2 压缩(使用“-j”选项)时,归档文件必须以“.tar.bz2”作为后缀。

$ tar -cjvf sales.tar.bz2 sales1.pdf sales2.pdf sales3.pdf

除了归档文件外,您还可以压缩目录。例如,以下命令创建一个简单的 home 目录 tarball。

$ tar -cvf home.tar /home/james

列出归档文件的内容

“-t”选项可用于列出归档文件的内容,而无需提取它。

$ tar -tf sales.tar.gz

此命令列出“sales.tar.gz”归档文件中的所有文件。

提取归档文件

有几种方法可以使用 tar 命令提取压缩文件。

提取到当前目录

要将归档文件提取到当前工作目录,请使用“-x”选项,如下所示。

$ tar -xvf documents.tar.gz

在此示例中,我们正在解压缩或提取“documents.tar.gz”文件,该文件包含三个文本文件。

提取到单独的目录

要将归档文件提取到不同的目录,请在“ -C”选项后面加上目标路径,如以下示例所示。

$ tar -xvf documents.tar.gz -C /tmp/files

此命令将“documents.tar.gz”归档文件的内容提取到 /tmp/files 目录中。

从归档文件中提取特定文件

您可以通过在命令行中逐一列出要提取的文件来提取某些指定的文件。

$ tar -xvf documents.tar.gz file1.txt file2.txt

在此示例中,我们正在从“documents.tar.gz”归档文件中提取“file1.txt”和“file2.txt”文件。

将文件添加到 .tar 归档文件

要添加或追加‘.tar’ 归档文件,请使用‘-r’选项,如下所示。

$ tar -rvf files.tar file3.txt

在此示例中,我们正在将 file3.txt 文件添加到 archives.tar 文件中。

从 .tar 文件中删除文件

要从‘.tar’ 归档文件中删除文件,请使用 --delete 选项,如下所示。

$ tar --delete -f archives.tar file3.txt

在此示例中,我们正在从 archives.tar 文件中删除“file3.txt”文件。

压缩归档文件

tar 命令还可以用于使用 gzip 或 bzip2 压缩压缩归档文件。要创建压缩文件,可以在 -c 选项中结合使用 -z-j 选项。

$ tar -zcvf archive.tar.gz files_to_compress

此命令创建指定文件的“.tar.gz”归档文件。

$ tar -jcvf archive.tar.bz2 files_to_compress

此命令创建指定文件的“.tar.bz2”归档文件。

解压缩归档文件

要解压缩‘.tar.gz’文件:

$ tar -zxvf archive.tar.gz

要解压缩‘.tar.bz2’文件:

$ tar -jxvf archive.tar.bz2

结论

tar 命令是用于管理 Linux 上文件的通用且强大的工具。它可以用于创建、提取和修改各种格式的归档文件,并提供各种选项以满足不同的需求。通过了解 tar 命令的语法和选项,您可以轻松地创建、管理和提取工作流程中的归档文件。通过掌握 tar 命令,您可以更有效地处理文件归档。

更新于: 2023年11月7日

83K+ 阅读量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告
© . All rights reserved.