如何创建Tar Gz文件

时间:2020-03-05 15:27:15  来源:igfitidea点击:

tar存档是一个文件,用于存储其他文件的集合,包括其他文件的信息,例如所有权,权限和时间戳。

在Linux操作系统中,可以使用'tar'命令创建tar归档文件。
该命令还可以使用各种压缩程序来压缩档案,其中gzip是最流行的算法。

按照约定,使用gzip压缩的tar归档文件的名称应以.tar.gz或者.tgz结尾。

本文介绍如何创建tar.gz文件。

创建tar.gz文件

大多数Linux发行版都包含GNU版本的“ tar”,该版本支持压缩档案。

用于创建tar.gz文件的命令的一般形式如下:

tar -czf archive-name.tar.gz file-name...

以下是命令选项的含义:

  • '-c'-指示'tar'创建一个新的档案。
  • '-z'-将压缩方法设置为gzip。
  • '-f archive-name.tar.gz'-指定档案名称。
  • 'file-name ...',用空格分隔的文件和目录列表,将添加到存档中。

运行该命令的用户必须在将创建tar.gz文件的目录上具有写许可权,并且对要添加的文件具有读许可权。

例如,要从“ file1”和“ file2”创建一个名为“ archive.tar.gz”的存档,可以使用以下命令:

tar -czf archive.tar.gz file1 file2

成功执行后,该命令将不会输出任何输出。
要验证是否创建了归档,请使用'ls'列出目录内容。

使用“ -v”选项使“ tar”命令更加可见,并在终端上打印要添加到存档中的文件的名称。

如果要在特定目录中创建tar.gz,请提供归档文件的完整路径:

tar -czf /home/user/archive.tar.gz file1 file2

我们可以从一个或者多个目录或者文件的内容创建tar.gz文件。
默认情况下,除非指定了“ --no-recursion”选项,否则将以递归方式归档目录。

以下示例显示了如何在“/var/www/website”目录中创建名为“ web_backup.tar.gz”的存档:

tar -czf web_backup.tar.gz /var/www/website

如果我们运行的系统具有较旧版本的“ tar”,而该版本不支持压缩,则可以使用“ gzip”命令:

tar -czf - file1 file2 | gzip > archive.tar.gz

在上面的示例中,“ tar”命令将存档输出到stdout(用'-'表示)。
归档文件通过管道传递到'gzip',后者压缩并将归档文件写入磁盘。

例子

  • 从所有“ .jpg”文件创建一个tar.gz文件:
tar -czf images.tar.gz *.jpg

通配符('*')表示所有以“ .jpg”扩展名结尾的文件。

  • 创建一个tar.gz文件,通过ssh传输它,并将其解压缩到远程计算机上:
tar cvf - project | ssh user@ip_addr "tar xv -C /var/www"