如何在基于CLI的基于Unix的操作系统中使用TAR压缩整个目录(包括子目录)

许多现代的Unix系统, 例如Linux, 都使用GNU tar, 这是自由软件基金会生产的tar版本。 TAR代表磁带归档, 将整个文件系统存储到磁带上, 这是该命令的一种用法。 tar的最常见用途是将几个文件简单地组合为一个文件, 以便于存储和分发。如果你的系统使用GNU tar, 则可以轻松地将gzip(GNU文件压缩程序)与tar结合使用, 并按照以下命令语法通过命令行创建压缩文件:

tar -zcvf [result-filename.tar.gz] [path-of-directory-to-compress]

-zcvf指令代表:
  • -z:使用gzip压缩所需的文件/目录
  • -c:代表创建文件(输出tar.gz文件)
  • -v:在创建文件时显示进度
  • -f:最后, 压缩所需文件/目录的路径
例如, 假设你位于/ www目录中的命令行中, 并且在此目录中, 有一个文件夹要压缩成单个文件, 即” sandbox” 。要将沙箱文件夹压缩为tar文件, 可以使用以下命令运行:
tar -zcvf sandbox_compressed.tar.gz sandbox

这应该开始将目录压缩到一个新的tar文件中, 因为我们有-v参数可以在控制台中显示进度, 所以你会看到要添加到该文件的每个文件名的列表。
提取生成的文件如果现在还希望通过命令行提取生成的文件, 则现在应该使用以下命令语法:
tar -xvzf [your-tar-file.tar.gz]

【如何在基于CLI的基于Unix的操作系统中使用TAR压缩整个目录(包括子目录)】-zcvf指令代表:
  • -z:使用gzip压缩所需的文件/目录
  • -x:代表解压缩文件(输入tar.gz文件)。如果在命令行上命名了任何文件, 则只会从存档中提取那些文件。
  • -v:在创建文件时显示进度
例如, 要提取我们先前创建的文件, 应使用以下命令:
tar -xvzf sandbox_compressed.tar.gz

这将提取当前目录中文件(沙盒文件夹)的内容。

    推荐阅读