歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> gzip、bzip2、xz、tar、zip壓縮、歸檔詳解

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

日期:2017/2/28 13:55:38   编辑:Linux教程

一、壓縮/解壓縮工具

壓縮比:壓縮前後文件體積大小比例

壓縮算法:通過分析數據存儲模式實現 ,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展開壓縮的歸檔文件是無需指明索要解壓擴展的文件的壓縮算法,因為其可以自動識別

Copyright © Linux教程網 All Rights Reserved