首頁 > 軟體

gzip、bzip2、xz、tar、zip壓縮、歸檔詳解

2020-06-16 17:48:20

一、壓縮/解壓縮工具

壓縮比:壓縮前後檔案體積大小比例

壓縮演算法:通過分析資料儲存模式實現 ,CPU資源佔用率換取磁碟空間

1.gzip/gunzip/zcat  - compress or expand files壓縮或者展開檔案

gzip  [OPTION]...  FILE…  預設會刪除原檔案

-d:解壓縮,相當於gunzip;

-#:指定壓縮比,預設是6;數位越大壓縮比越大(1-9);

-c:將壓縮結果輸出至標準輸出;gzip  -c  FILE > /PATH/TO/SOMEFILE.gz

2.bzip2/bunzip2/bzcat

bzip2  [OPTION]...  FILE…  預設會刪除原檔案

-d:解壓縮

-#:指定壓縮比;預設是6;數位越大壓縮比越大(1-9);

-k:keep,保留原檔案;

3.xz/unxz/xzcat;lzma/unlzma/lzcat

xz [OPTION]... FILE…  預設會刪除原檔案

-d:解壓縮

-#:指定壓縮比;預設是6;數位越大壓縮比越大(1-9);

-k:保留原檔案;

4.三種壓縮工具比較總結

(1)在較小檔案,特別是文字檔案的處理上gzip演算法壓縮後效果最好

(2)對也大檔案,實際上zx的演算法壓縮比最優,遠超gzip,bzip2比gzip好點

(3)bzi2比gzip壓縮比優一點,但時不明顯

(4)gzip、bzip2、xz都只支援壓縮檔案 不支援目錄

(5)zcat、bzcat、xzcat都能直接檢視壓縮檔案的內容,而不用去單獨解壓

實際上zcat、bzcat、xzcat將其加壓在臨時檔案內以供檢視,所以對大檔案不建議用此類命令,過於佔用CPU資源

二、歸檔

歸檔:把多個檔案打包成一個檔案,歸檔本身會使得檔案變大,所以歸檔之後一般壓縮

1.tar

tar  [OPTION]...  FILE…

-f  /PATH/TO/SOMEFILE.tar  :file,定義歸檔檔名和型別

歸檔多個檔案或者目錄,且不刪除原檔案,不指明路徑預設當前路徑,選項可以不加-

(1)建立歸檔

-c -f /PATH/TO/SOMEFILE.tar  FILE...

-cf /PATH/TO/SOMEFILE.tar  FILE...

(2)展開歸檔(tar預設可以根據檔案字尾判斷出壓縮型別)

-xf  /PATH/FROM/SOMEFILE.tar

-xf  /PATH/FROM/SOMEFILE.tar  -C  /PATH/TO/SOMEDIR  展開至何處

(3)檢視歸檔檔案的檔案列表

-tf  /PATH/TO/SOMEFILE.tar

(4)歸檔壓縮/解壓縮

-z:gzip2演算法型別,-zcf      -zxf

-j:bzip2演算法型別,-jcf    -jxf

-J: xz演算法型別,-Jcf    -Jxf

2.zip/unzip既能壓縮解壓又能歸檔,字尾.zip

壓縮  zip  newname.zip  file

解壓:unzip

歸納總結:

1.檔案的字尾對Linux系統無實際意義,但時在壓縮解壓有實際意義,要注意檔案的擴充套件名

2.gzip、bzip2、xz都只支援壓縮檔案 不支援目錄

3.tar本身只能對檔案歸檔但不能壓縮解壓操作,通過呼叫gzip、bzip2、xz實現歸檔壓縮

4.tar純粹做歸檔操作,得到的檔案大小會比其歸檔的每個檔案大小和還要大

5.tar展開壓縮的歸檔檔案是無需指明索要解壓擴充套件的檔案的壓縮演算法,因為其可以自動識別

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-12/126644.htm


IT145.com E-mail:sddin#qq.com