在 Linux 上使用 tarball

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 使用起來簡單方便。

相關文章
相關標籤/搜索