在計算機科學和信息論中,數據壓縮或者源編碼是按照特定的編碼機制用比未經編碼少的數據比特(或者其它信息相關的單位)表示信息的過程。例如,若是咱們將「compression」編碼爲「comp」那麼這篇文章能夠用較少的數據位表示。常見的例子是ZIP文件格式,此格式不單單提供壓縮功能,還可做爲歸檔工具(Archiver),可以將許多文件存儲到同一個文件中。linux
簡單的說,就是通過壓縮軟件壓縮的文件叫壓縮文件,壓縮的原理是把文件的二進制代碼壓縮,把相鄰的0,1代碼減小,好比有000000,能夠把它變成6個0 的寫法60,來減小該文件的空間。
壓縮文件的基本原理是查找文件內的重複字節,並創建一個相同字節的"詞典"文件,並用一個代碼表示,好比在文件裏有幾處有一個相同的詞"中華人民共和國"用一個代碼表示並寫入"詞典"文件,這樣就能夠達到縮小文件的目的。算法
ZIP文件格式是一種數據壓縮和文檔儲存的文件格式,原名Deflate,發明者爲菲爾·卡茨(Phil Katz),他於1989年1月公佈了該格式的資料。ZIP一般使用後綴名「.zip」,它的MIME格式爲application/zip。當前,ZIP格式屬於幾種主流的壓縮格式之一,其競爭者包括RAR格式以及開放源碼的7z格式。從性能上比較,RAR及7z格式較ZIP格式壓縮率較高,而7-Zip因爲提供了免費的壓縮工具而逐漸在更多的領域獲得應用。Microsoft從Windows ME操做系統開始內置對zip格式的支持,即便用戶的計算機上沒有安裝解壓縮軟件,也能打開和製做zip格式的壓縮文件,OS X和流行的Linux操做系統也對zip格式提供了相似的支持。所以若是在網絡上傳播和分發文件,zip格式每每是最經常使用的選擇。網絡
Gzip是若干種文件壓縮程序的簡稱,一般指GNU計劃的實現,此處的gzip表明GNU zip。也常常用來表示gzip這種文件格式。軟件的做者是Jean-loup Gailly和Mark Adler。在1992年10月31日第一次公開發布,版本號0.1,1993年2月,發佈了1.0版本app
bzip2是Julian Seward開發並按照自由軟件/開源軟件協議發佈的數據壓縮算法及程序。Seward在1996年7月第一次公開發布了bzip2 0.15版,在隨後幾年中這個壓縮工具穩定性獲得改善而且日漸流行,Seward在2000年晚些時候發佈了1.0版。工具
在計算機科學中,7z是一種可使用多種壓縮算法進行數據壓縮的文件格式。該格式最初被7-Zip實現並採用,可是這種文件格式是公有的,而且7-Zip軟件自己亦在GNU寬通用公共許可證 (GNU LGPL)協議下開放源代碼。當前LZMA軟件開發工具包的最新版本爲v15.12。性能
RAR是一種專利文件格式,用於數據壓縮與歸檔打包,開發者爲尤金·羅謝爾(俄語:Евгений Лазаревич Рошал,拉丁轉寫:Yevgeny Lazarevich Roshal),RAR的全名是「Roshal ARchive」,即「羅謝爾的歸檔」之意。首個公開版本RAR 1.3發佈於1993年。開發工具
尤金·羅謝爾,1972年3月10日生於俄羅斯。畢業於俄羅斯車里雅賓斯克工業大學(Chelyabinsk Technical University,今南烏拉州立大學),也是FAR文件管理器的做者。他開發程序壓縮或解壓RAR文件,最初用於DOS,後來移植到其它平臺。主要的Windows版本編碼器,稱爲WinRAR,以共享軟件的形式發行。不過羅謝爾公開了解碼器源碼,UnRAR解碼器許可證以不準發佈編譯RAR兼容編碼器爲條件下容許有條件自由發佈與修改,而RAR編碼器一直是有專利的。編碼
最近的開發者是尤金·羅謝爾的胞兄亞歷山大·羅謝爾。雖然其解碼器有專利,編譯好的解壓程序仍然存在於若干平臺,例如開源的7-Zip。操作系統
文件後綴名 | 說明 | 壓縮 | 解壓縮 |
---|---|---|---|
*.zip | zip 程序打包壓縮的文件 | zip fileName.zip dirName | unzip fileName.zip |
*.rar | rar 程序壓縮的文件 | rar a fileName.rar dirName | rar x fileName.rar |
*.7z | 7zip 程序壓縮的文件 | 7z a fileName.7z dirName | 7z x fileName.7z |
*.tar | tar 程序打包,未壓縮的文件 | tar cvf fileName.tar dirName | tar xvf fileName.tar |
*.gz | gzip 程序 (GNU zip) 壓縮的文件 | gzip fileName | gzip -d fileName.gz |
*.bz2 | tar 打包,gzip 程序壓縮的文件 | bzip2 -z FileName | bzip2 -d FileName.bz2 |
*.tar.gz | tar打包,gzip程序壓縮的文件 | tar zcvf FileName.tar.gz dirName | tar zxvf FileName.tar.gz |
*.tar.xz | tar打包,xz程序壓縮的文件 | tar cvJf fileName.tar.xz dirName | tar -xvJf fileName.tar.xz |
*.tar.bz2 | tar打包,bzip2程序壓縮的文件 | tar jcvf FileName.tar.bz2 dirName | tar jxvf FileName.tar.bz2 |
*.Z | compress命令解壓縮rar文件 | compress fileName | uncompress fileName.Z |