Tarball 提供了一种在 Linux 系统上备份和管理一组文件的通用方法。请按照如下提示了解如何建立它们,以及从中提取和删除单个文件。 |
“tarball” (LCTT 译注:国内也常称为“tar 包”)一词一般用于描述备份一组选择的文件并将它们打包在一个文件中的一种文件格式。该名称来自 .tar 文件扩展名和 tar 命令,它用于将文件打包到一个文件中,有时还会压缩该文件,使其在移动到其它系统时更小。linux
tarball 一般用于备份我的或系统文件来建立存档,特别是在进行可能须要撤消的更改以前。例如,Linux 系统管理员一般会在更改应用以前建立包含一系列配置文件的 tarball,以防必须撤消这些更改。从 tarball 中解压文件一般比在备份中搜索文件快。命令行
如何在 Linux 上建立 tarballip
使用以下命令,你能够在单条命令中建立 tarball 并压缩它。get
$ tar -cvzf PDFs.tar.gz *.pdf
其结果是一个压缩文件(gzip 压缩的),其中包含了当前目录中的全部 PDF 文件。固然,压缩是可选的。一个稍微简单的只是将 PDF 文件打包成未压缩 tarball 的命令:table
$ tar -cvf PDFs.tar *.pdf
注意,选项中的 z 将文件变成压缩的。 c 代表建立文件,v(详细)表示你在命令运行时须要一些反馈。若是你不想查看列出的文件,请忽略 v。pdf
另外一个常见的命名约定是给压缩的 tarball 命名成 .tgz 而不是双扩展名 .tar.gz,以下所示:扩展
$ tar cvzf MyPDFs.tgz *.pdf
如何从 tarball 中解压文件打包
要从 gzip 压缩包中解压全部文件,你可使用以下命令:配置
$ tar -xvzf file.tar.gz
若是使用 .tgz 命名约定,该命令将以下所示:file
$ tar -xvzf MyPDFs.tgz
要从 gzip 包中解压单个文件,你能够执行几乎相同的操做,只需添加文件名:
$ tar -xvzf PDFs.tar.gz ShenTix.pdf ShenTix.pdf ls -l ShenTix.pdf -rw-rw-r-- 1 shs shs 122057 Dec 14 14:43 ShenTix.pdf
若是未压缩 tarball,你甚至能够从 tarball 中删除文件。例如,若是咱们想从 PDFs.tar.gz 中删除咱们上面解压过的文件,咱们会这样作:
$ gunzip PDFs.tar.gz $ ls -l PDFs.tar -rw-rw-r-- 1 shs shs 10700800 Dec 15 11:51 PDFs.tar $ tar -vf PDFs.tar --delete ShenTix.pdf $ ls -l PDFs.tar -rw-rw-r-- 1 shs shs 10577920 Dec 15 11:45 PDFs.tar
请注意,咱们在删除 ShenTix.pdf 后,缩小了一点 tarball 文件占用的空间。若是咱们想要,咱们能够再次压缩文件:
$ gzip -f PDFs.tar ls -l PDFs.tar.gz -rw-rw-r-- 1 shs shs 10134499 Dec 15 11:51 PDFs.tar.gzFlickr / James St. John
丰富的命令行选项使得 tarball 使用起来简单方便。