bzip2
bzip2 是一個基於Burrows-Wheeler 變換的無損壓縮軟件,壓縮效果比傳統的LZ77/LZ78壓縮演算法來得好。它免費提供,具有高質量的數據壓縮能力。bzip2 利用先進的壓縮技術,能夠把文件壓縮到10%至15%,壓縮的速度和解壓的效率都非常高!若沒有加上任何參數,bzip2壓縮完文件後會產生.bz2的壓縮文件,並刪除原始的文件。
是爲了取代gzip而存在的,壓縮比比gzip要高。
bzcat:用來顯示壓縮的文本文件的內容;
bunzip2:用來解壓壓縮後的.bz2文件,和-d功能是一樣的;
bzip2recover:用來嘗試恢復損毀的壓縮文件。
參 數:
-c或--stdout 將壓縮與解壓縮的結果送到標準輸出。
-d或--decompress 執行解壓縮。
-f或--force bzip2在壓縮或解壓縮時,若輸出文件與現有文件同名,預設不會覆蓋現有文件。若要覆蓋,請使用此參數。
-h或--help 顯示幫助。
-k或--keep bzip2在壓縮或解壓縮後,會刪除原始的文件。若要保留原始文件,請使用此參數。
-s或--small 降低程序執行時內存的使用量。
-t或--test 測試.bz2壓縮文件的完整性。
-v或--verbose 壓縮或解壓縮文件時,顯示詳細的信息。
-z或--compress 強制執行壓縮。
-L,--license,
-V或--version 顯示版本信息。
--repetitive-best 若文件中有重複出現的資料時,可利用此參數提高壓縮效果。
--repetitive-fast 若文件中有重複出現的資料時,可利用此參數加快執行速度。
-壓縮等級 壓縮時的區塊大小。 -9 最佳, -1 最快,默認的是-6。
範例一:
將剛剛的 /tmp/man.config 以 bzip2 壓縮[root@linux tmp]# bzip2 -z man.config
此時 man.config 會變成 man.config.bz2 !
範例二:
將範例一的文件內容讀出來!
[root@linux tmp]# bzcat man.config.bz2
此時屏幕上會顯示 man.config.bz2 解壓縮之後的文件內容!!
範例三:
將範例一的文件解壓縮
[root@linux tmp]# bzip2 -d man.config.bz2
範例四:
將範例三將 man.config 用最佳的壓縮比壓縮,並保留原本的文件
[root@linux tmp]# bzip2 -9 -k man.config
這個是我改的,網上原文是這樣的:
範例四:將範例三解開的 man.config 用最佳的壓縮比壓縮,並保留原本的文件
[root@linux tmp]# bzip2 -9 -c man.config > man.config.bz2
範例五:解壓到標準輸出:
$bzip2 -dc filename.bz2
這裏,使用-c指定到標準輸出,輸出的是文件filename的內容,不會將filename.bz2刪除。
範例六,壓縮到標準輸出:
$bzip2 -c filename
bzip2: I won't write compressed data to a terminal.
bzip2: For help, type: `bzip2 --help'.
這裏,使用-c指定壓縮到標準輸出不刪除原有文件,不同的是,壓縮後的文件無法輸出到標準輸出。
範例七,使用bzip2的時候將所有後面的看作文件(即使文件名以'-'開頭):
$bzip2 -- -myfilename
這裏主要是爲了防止文件名中'-'產生以爲是選項的歧義。