如何将gzip tar包存档.tar.gz提取到指定的目录

创建一个tar.gz包用于测试:

mkdir archive
$touch archive/onitroad
$tar cvzf gzip-tar包.tar.gz archive/
archive/
archive/onitroad
$ls -l gzip-tar包.tar.gz
-rw-rw-r--. 1 lrendek lrendek 155 Jan 26 09:22 gzip-tar包.tar.gz

虽然我们使用了单个命令'tar'来压缩'archive/'目录,但事实上,使用'tar'的选项'z',我们还调用了'gzip'命令来帮助压缩。
首先,“tar”命令从“archive”目录创建了一个tar包,然后“gzip”命令将“gzip tar包.tar”的内容压缩为“gzip tar包.tar.gz”。因此,extract命令'tar xzf'将首先使用'gzip'解压缩gzip tar包,然后使用'tar'命令从流中提取tar包内容。
因此,要将gzip压缩的tar包解压缩到特定目录,我们需要使用两个工具“tar”和“gzip或者gunzip”。

简单的解决方案是使用管道将'gunzip'命令输出重定向到'tar'。

假设我们想将gzip tar包.tar存档解压缩到一个目录/tmp/dir1

$gunzip -c gzip-tar包.tar.gz | tar x -C /tmp/dir1/

查看目录/tmp/dir1 /

$ls /tmp/dir1/archive/
onitroad
日期:2020-07-07 20:54:39 来源:oir作者:oir