Linux tar打包、壓縮命令詳解

在生產中會常常用到壓縮,解壓縮,打包,解包等,這時候tar這個萬能的小老弟就是是必不可少的了。linux中最流行的tar是麻雀雖小,五臟俱全,功能強大。

tar命令可以爲linux的文件和目錄創建檔案。利用tar,可以爲某一特定文件創建檔案(備份文件),也可以在檔案中改變文件,或者向檔案中加入新的文件。tar最初被用來在磁帶上創建檔案,現在,用戶可以在任何設備上創建檔案。利用tar命令,可以把一大堆的文件和目錄全部打包成一個文件,這對於備份文件或將幾個文件組合成爲一個文件以便於網絡傳輸是非常有用的。

首先要弄清兩個概念:打包和壓縮。打包是指將一大堆文件或目錄變成一個總的文件;壓縮則是將一個大的文件通過一些壓縮算法變成一個小文件。

爲什麼要區分這兩個概念呢?這源於Linux中很多壓縮程序只能針對一個文件進行壓縮,這樣當你想要壓縮一大堆文件時,你得先將這一大堆文件先打成一個包也就是所謂的歸檔(tar命令),然後再用壓縮程序進行壓縮(gzip bzip2命令)。

linux下最常用的打包程序就是tar了,使用tar程序打出來的包我們常稱爲tar包,tar包文件的命令通常都是以.tar結尾的。生成tar包後,就可以用其它的程序來進行壓縮。

1.命令格式:

tar[必要參數][選擇參數][文件]

2.命令功能:

用來壓縮和解壓文件。tar本身不具有壓縮功能。他是調用壓縮功能實現的

3.命令詳解:

tar命令詳解

-c: 建立壓縮檔案

-x:解壓

-t:查看內容

-r:向壓縮歸檔文件末尾追加文件

-u:更新原壓縮包中的文件

這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。

下面的參數是根據需要在壓縮或解壓檔案時可選的。

-z:有gzip屬性的

-j:有bz2屬性的

-Z:有compress屬性的

-v:顯示所有過程

-O:將文件解開到標準輸出

參數-f是必須的

-f: 使用檔案名字,切記,這個參數是最後一個參數,後面只能接檔案名。

#tar -cf all.tar *.jpg 這條命令是將所有.jpg的文件打成一個名爲all.tar的包。-c是表示產生新的包,-f指定包的文件名。
#tar -rf all.tar *.gif 這條命令是將所有.gif的文件增加到all.tar的包裏面去。-r是表示增加文件的意思。
#tar -uf all.tar logo.gif 這條命令是更新原來tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
#tar -tf all.tar 這條命令是列出all.tar包中所有文件,-t是列出文件的意思
#tar -xf all.tar 這條命令是解出all.tar包中所有文件,-x是解開的意思

查看
tar -tf aaa.tar.gz 在不解壓的情況下查看壓縮包的內容

壓縮

tar –cvf jpg.tar *.jpg //將目錄裏所有jpg文件打包成tar.jpg

tar –czf jpg.tar.gz *.jpg //將目錄裏所有jpg文件打包成jpg.tar後,並且將其用gzip壓縮,生成一個gzip壓縮過的包,命名爲jpg.tar.gz

tar –cjf jpg.tar.bz2 *.jpg //將目錄裏所有jpg文件打包成jpg.tar後,並且將其用bzip2壓縮,生成一個bzip2壓縮過的包,命名爲jpg.tar.bz2

tar –cZf jpg.tar.Z *.jpg //將目錄裏所有jpg文件打包成jpg.tar後,並且將其用compress壓縮,生成一個umcompress壓縮過的包,命名爲jpg.tar.Z

tar -Jcf jpg.tar.xz *.jpg
解壓

tar –xvf file.tar //解壓 tar包

tar -xzvf file.tar.gz //解壓tar.gz

tar -xjvf file.tar.bz2 //解壓 tar.bz2tar –xZvf file.tar.Z //解壓tar.Z

總結

1、*.tar 用 tar –xvf 解壓

2、*.gz 用 gzip -d或者gunzip 解壓

3、.tar.gz和.tgz 用 tar –xzf 解壓

4、*.bz2 用 bzip2 -d或者用bunzip2 解壓

5、*.tar.bz2用tar –xjf 解壓

6、*.Z 用 uncompress 解壓

7、.tar.Z 用tar –xZf 解壓
8、
.tar.xz 用tar -xJf解壓

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章