如何将 Tar 文件提取到 Linux 中的特定或不同目录
tar 实用程序是可用于在 Linux 系统上创建备份的实用程序之一。它包括许多选项,可用于指定要实现的任务。
需要理解的一件事是,您可以将 tar 文件提取到不同或特定的目录,不一定是当前工作目录。在继续阅读本文之前,您可以在下面的文章中阅读有关 tar 备份实用程序的更多信息以及许多不同的示例。
通过这 18 个 Linux 示例掌握 tar 命令
在本指南中,我们将了解如何将 tar 文件提取到您希望文件驻留的特定或不同目录。
用于提取文件的 tar 实用程序的一般语法:
tar -xf file_name.tar -C /target/directory
tar -xf file_name.tar.gz --directory /target/directory
注意:在上面的第一个语法中,-C
选项用于指定当前工作目录之外的不同目录。
现在让我们看一下下面的一些例子。
示例 1:将 tar 文件提取到特定目录
在第一个示例中,我将 articles.tar 中的文件提取到目录 /tmp/my_article
中。请始终确保要将 tar 文件解压到的目录存在。
让我首先使用以下命令创建 /tmp/my_article
目录:
mkdir /tmp/my_article
您可以在上述命令中包含 -p
选项,以便该命令不会出现错误。
要将 articles.tar
中的文件提取到 /tmp/my_article
,我将运行以下命令:
tar -xvf articles.tar -C /tmp/my_article/
在上面的示例中,我使用 -v
选项来监视 tar 提取的进度。
对于上面的示例,我还使用 --directory
选项而不是 -c
。它的工作原理是一样的。
tar -xvf articles.tar --directory /tmp/my_articles/
示例 2:将 .tar.gz 或 .tgz 文件提取到不同的目录
首先确保您使用以下命令创建要解压到的特定目录:
mkdir -p /tmp/tgz
现在我们将 documents.tgz
文件的内容提取到单独的 /tmp/tgz/ 目录中。
tar -zvxf documents.tgz -C /tmp/tgz/
示例 3:将 tar.bz2、.tar.bz、.tbz 或 .tbz2 文件提取到不同目录
再次强调,在解压文件之前必须创建一个单独的目录:
mkdir -p /tmp/tar.bz2
现在我们将把 documents.tbz2
文件解压到 /tmp/tar.bz2/ 目录。
tar -jvxf documents.tbz2 -C /tmp/tar.bz2/
示例 4:从 Tar 存档中仅提取特定或选定的文件
tar 实用程序还允许您定义只想从 .tar 文件中提取的文件。在下一个示例中,我将从 tar 文件中提取特定文件到特定目录,如下所示:
mkdir /backup/tar_extracts
tar -xvf etc.tar etc/issue etc/fuse.conf etc/mysql/ -C /backup/tar_extracts/
概括
也就是说,将 tar 文件提取到特定目录,并从 tar 文件中提取特定文件。如果您发现本指南有帮助或者有更多信息或其他想法,您可以通过发表评论向我提供反馈。