1. 程式人生 > >Linux中常用的壓縮和解壓縮工具

Linux中常用的壓縮和解壓縮工具

linux 壓縮

一、相關術語

壓縮:通過算法將文件儲存空間減小,以時間換空間的一種操作

壓縮比:某個文件壓縮操作之前與壓縮之後的大小比值


二、Linux中常用的壓縮工具

compress/uncompress

會在文件名的後面增加.Z的後綴名;xxx.Z,用的很少,算法較差


gzip/gunzip

會在文件名的後面增加.gz的後綴名:xxx.gz

-d 解壓縮,相當於gunzip

-NUMBER --fast --best 壓縮時的等級1-9,默認為6

-c 將壓縮結果輸出到標準輸出,但並不對源文件做壓縮處理,可以使用重定向進行打包


bzip2/bunzip2

後綴名:.bz2

-d 解壓縮

-k bzip2在壓縮和解壓時會默認刪除源文件,使用此選項可以保留源文件

-c 將壓縮結果輸出到標準輸出,但並不對源文件做壓縮處理

-1 -9 默認壓縮等級為9


xz/unxz

後綴名:.xz

xz,unxz,xzcat,lzma,unlzma,lzcat

-d 解壓縮

-k 保留原文件

-0 -9 默認壓縮等級為6



zip/unzip

為了和windows兼容開發,主要還是在win中,主要作用是打包,源文件並不刪除,後綴名:.zip


zip zipfile file

-p password


unzip:

-l 查看壓縮包中的文件列表



tar:歸檔,本身不具備壓縮功能,可以使用

選項:

主選項

-c:創建檔案文件

-r:在檔案文件末尾追加文件

-t:列出檔案文件的內容

-u:當文件比檔案文件中內容新時向檔案文件中追加

-x:從檔案中獲取文件,釋放文件


輔助選項:

-f:使用檔案文件時用於指明檔案文件的選項

-C:釋放檔案中的文件時,不釋放到當前目錄,而是指定額外路徑

-j:調用bzip2壓縮,主要用於創建檔案文件時

-J:調用xz壓縮

-z:調用gzip工具

-Z:調用compress工具

-k:釋放檔案中的文件時,如果目標位置有與檔案中同名的文件,則此類文件不釋放,並且報錯

--exclude=PATTERN:在釋放檔案中的文件時,被PATTERN匹配到的文件不釋放


示例:

tar -cJf /backup/etc-`date +%F`-`date +%H`.tar.xz /etc

Linux中常用的壓縮和解壓縮工具