您的位置: 首頁 >互聯(lián)網(wǎng) >

說一說Gzip是什么及Gzip有什么用

2022-08-31 14:42:00 編輯:扶雁裕 來源:
導(dǎo)讀 今天來說一下關(guān)于Gzip是什么及Gzip有什么用這方面的一些訊息,不少朋友對于Gzip是什么及Gzip有什么用這方面的信息頗感興趣的。小編今天就為...

今天來說一下關(guān)于Gzip是什么及Gzip有什么用這方面的一些訊息,不少朋友對于Gzip是什么及Gzip有什么用這方面的信息頗感興趣的。小編今天就為此整理一些相關(guān)的訊息,希望對有需要的朋友有所幫助。

Gzip 是一種壓縮文件格式并且也是一個在類 Unix 上的一種文件解壓縮的軟件,通常指 GNU 計劃的實現(xiàn),此處的 gzip 代表 GNU zip。也經(jīng)常用來表示 gzip 這種文件格式。軟件的作者是 Jean-loup Gailly 和 Mark Adler。

Gzip

在 1992 年 10 月 31 日第一次公開發(fā)布,版本號 0.1,1993 年 2 月,發(fā)布了 1.0 版本。OpenBSD 中所包含的 gzip 版本實際上是 compress 程序,其對 gzip 文件的支持在 OpenBSD 3.4 中被添加,此處的 g 代表免費(gratis)。

文件格式

gzip 的基礎(chǔ)是 DEFLATE,DEFLATE 是 LZ77 與哈夫曼編碼的一個組合體。DEFLATE 最初是作為 LZW 以及其它受專利保護的數(shù)據(jù)壓縮算法的替代版本而設(shè)計的,當時那些專利限制了 compress 以及其它一些流行的歸檔工具的應(yīng)用。

文件格式說明:

10 字節(jié)的頭,包含幻數(shù)、版本號以及時間戳

可選的擴展頭,如原文件名

文件體,包括 DEFLATE 壓縮的數(shù)據(jù)

8 字節(jié)的尾注,包括 CRC-32 校驗和以及未壓縮的原始數(shù)據(jù)長度

盡管這種文件格式允許多個這樣的數(shù)據(jù)拼接在一起,在解壓時也能認出它們是拼接在一起的數(shù)據(jù),但通常 gzip 僅用來壓縮單個文件。多個文件的壓縮歸檔通常是首先將這些文件合并成一個 tar 文件,然后再使用 gzip 進行壓縮,最后生成的.tar.gz 或者.tgz 文件就是所謂的“tar 壓縮包”或者“tarball”。

注意不要將 gzip 和 ZIP 壓縮格式混淆。ZIP 也使用 DEFLATE 算法,而且可移植性更好,不需要一個外部的歸檔工具就可以包容多個文件。但是,由于 ZIP 對每個文件進行單獨壓縮而沒有利用文件間的冗余信息(即固實壓縮),所以 ZIP 的壓縮率會稍遜于 tar 壓縮包。

gzip 命令的常用選項

-c,–stdout 將解壓縮的內(nèi)容輸出到標準輸出,原文件保持不變

-d,–decompress 解壓縮

-f,–force 強制覆蓋舊文件

-l,–list 列出壓縮包內(nèi)儲存的原始文件的信息(如,解壓后的名字、壓縮率等)

-n,–no-name 壓縮時不保存原始文件的文件名和時間戳,解壓縮時不恢復(fù)原始文件的文件名和時間戳(此時,解出來的文件,其文件名為壓縮包的文件名)

-N,–name 壓縮時保存原始文件的文件名和時間戳,解壓縮時恢復(fù)原始文件的文件名和時間戳

-q,–quiet 抑制所有警告信息

-r,–recursive 遞歸

-t,–test 測試壓縮文件完整性

-v,–verbose 冗余模式(即顯示每一步的執(zhí)行內(nèi)容)

-1、-2、…、-9 壓縮率依次增大,速度依次減慢,默認為-6

派生品和其它應(yīng)用

在大多數(shù) Linux 發(fā)行版中,通過使用 zx 選項來提取.tar.gz 格式的壓縮文件,例如:tar -zxf file.tar.gz

zlib 是 DEFLATE 算法的實現(xiàn)庫,它的 API 同時支持 gzip 文件格式以及一個簡化的數(shù)據(jù)流格式。zlib 數(shù)據(jù)流格式、DEFLATE 以及 gzip 文件格式均已被分別標準化為 RFC 1950、RFC 1951、RFC 1952。

gzip 在 HTTP 壓縮,一種在萬維網(wǎng)中加速傳輸 HTML 和其他內(nèi)容的技術(shù)。它是在 RFC 2016 中規(guī)定的三種標準 HTTP 壓縮格式之一。這個 RFC(征求意見稿)頁定義了一種叫做”DEFLATE”的 zlib 格式,它和 gzip 格式相同,除了 gzip 添加了 11 字節(jié)頭部和尾部的負載。但是,現(xiàn)在還是建議使用 gzip 而不是 zlib,因為根據(jù) RFC 1950, IE 還沒有正確的實現(xiàn)該標準,還不能處理 zlib 格式。

zlib DEFLATE 已經(jīng)在 Portable Network Graphics(PNG)格式中使用。

自 20 世紀 90 年代末期以來,一個基于數(shù)據(jù)塊排序算法的文件壓縮工具 bzip2 作為 gzip 的替代者逐漸得到流行,它可以生成相當小的壓縮文件,尤其是對于源代碼和其他結(jié)構(gòu)化文本更是這樣,但代價是最高達 4 倍的內(nèi)存與處理器時間消耗。bzip2 壓縮的 tar 包傳統(tǒng)上叫作.tar.bz2 或.tbz。

AdvanceCOMP 和 7zip 內(nèi)部也有一個 DEFLATE 實現(xiàn),可以制作 gzip 兼容的壓縮文件,與 gzip 相比有更高的壓縮率,不過比較耗費處理器的處理時間。

gzip 壓縮文件對應(yīng)的解壓程序是 gunzip。

以上就是關(guān)于Gzip是什么及Gzip有什么用這方面的一些信息了 小編整理的這些訊息希望對童鞋們有所幫助


免責聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!

最新文章

精彩推薦

圖文推薦

點擊排行

2016-2022 All Rights Reserved.平安財經(jīng)網(wǎng).復(fù)制必究 聯(lián)系QQ280 715 8082   備案號:閩ICP備19027007號-6

本站除標明“本站原創(chuàng)”外所有信息均轉(zhuǎn)載自互聯(lián)網(wǎng) 版權(quán)歸原作者所有。