1. 程式人生 > >#11 壓縮與解壓縮

#11 壓縮與解壓縮

壓縮與解壓縮

Linux系統中常用的壓縮和解壓縮工具;

壓縮:以時間換空間的一種操作;

壓縮的原理:標記和替換;

壓縮比:壓縮之前與壓縮之後的文件的大小的比值;

純文本文件壓縮比較大

視頻、圖像等文件壓縮比小

能夠實現壓縮功能的工具:

compress/uncompress: .Z擴展名為紅色的,沒有特殊含義(系統自帶的工具)

gzip/gunzip:.gz擴展名

bzip2/bunzip2:.bz2擴展名

xz/unxz:.xz擴展名,目前壓縮比最高的工具

zip/unzip:.zip擴展名

gzip:

zcat:讀取壓縮包

gzip, gunzip, zcat - compress or expand files

-d:解壓縮;

-#:以指定的壓縮比進行壓縮,1-9,9為最高級,默認為6;

-C:將壓縮結果輸出到標準輸出,不會對原文件進行壓縮;

gzip -c /path/to/file > /path/to/compress_file.gz


bzip2:

bunzip2:讀取壓縮包

bzip2, bunzip2 - a block-sorting file compressor, v1.0.6

bzcat - decompresses files to stdout

-d:解壓縮;

-#:以指定的壓縮比進行壓縮,1-9,9為最高級,默認為6;

-k --keep:保留原文件不刪除,創建新的壓縮文件;


xz:

xzcat:讀取壓縮包

xz, unxz, xzcat, - Compress or decompress .xz files

-d:解壓縮;

-#:以指定的壓縮比進行壓縮,1-9,9為最高級,默認為6;

-k --keep:保留原文件不刪除,創建新的壓縮文件;


tar:歸檔程序

tar——tape archive:磁帶檔案

tar [OPTION...] [FILE]...

主選項:

-c:創建檔案文件

-x:釋放檔案文件的內容

-t:查看檔案文件中包含的文件

-u/-r:向檔案文件中添加新的文件


輔助選項:

-f:指定檔案文件的路徑

-C:釋放檔案文件中的內容時,指定釋放的路徑;

-z:在創建檔案文件時,調用gzip進行壓縮;

-j:在創建檔案文件時,調用bzip2進行壓縮;

-J:在創建檔案文件時,調用xz進行壓縮;

--exclude:在釋放檔案文件時,排除某個文件;

-k:在釋放檔案文件時,不會覆蓋同名文件;


#11 壓縮與解壓縮