新聞中心
在Linux系統(tǒng)中,gzip是一個備受歡迎的壓縮工具。它可以將文件或目錄壓縮成.gz格式的文件,從而減小文件的大小,方便傳輸和存儲。不過,很多人只知道gzip是一個實用的工具,但并不了解其原理是如何實現(xiàn)的。本文將,讓大家了解gzip的底層技術(shù)。

創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計、網(wǎng)站制作與策劃設(shè)計,磐石網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十多年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:磐石等地區(qū)。磐石做網(wǎng)站價格咨詢:13518219792
一、gzip的基本原理
gzip是一種基于Lempel-Ziv算法的壓縮工具。在進(jìn)行壓縮過程中,gzip通過字典查找的方式,將輸入的字符序列劃分成不同的字串,并對每個字串進(jìn)行編碼。具體來說,gzip利用哈希表記錄出現(xiàn)頻率較高的字串,從而更快地在字典中查找對應(yīng)的編碼。由于壓縮后的輸出比壓縮前的輸入要小很多,gzip可以在幾乎不影響壓縮文件質(zhì)量的前提下,大大減小文件的大小。
在解壓縮過程中,gzip先讀取壓縮文件的頭部信息,然后根據(jù)頭部信息中的壓縮算法,選擇相應(yīng)的解壓縮算法,并開始還原壓縮文件。解壓縮過程中,gzip會根據(jù)字典對編碼進(jìn)行反向查找,將編碼還原成字符序列,并輸出至解壓縮文件。
二、gzip的常用操作
gzip是一種常用的壓縮工具,常見的操作包括:
1.壓縮文件
通過以下命令,將文件進(jìn)行壓縮:
gzip
此命令將會生成一個.gz格式的文件,文件名為.gz。
2.解壓文件
通過以下命令,將.gz格式的文件進(jìn)行解壓縮:
gzip -d .gz
此命令將會還原.gz文件,并在當(dāng)前目錄下生成一個與原文件同名的文件。
3.壓縮目錄
通過以下命令,將目錄進(jìn)行壓縮:
tar czvf .tar.gz
此命令將會把指定的目錄以及子目錄中的文件進(jìn)行壓縮,并生成一個.tar.gz文件。
4.解壓目錄
通過以下命令,將.tar.gz格式的文件進(jìn)行解壓縮:
tar xzvf .tar.gz
此命令將會把.tar.gz文件解壓縮,并生成一個與壓縮文件同名的目錄。
三、gzip的高級技巧
除了基本的壓縮和解壓縮操作之外,gzip還有一些高級的技巧,可以讓我們更好地利用這個工具。以下列舉一些常見的高級操作:
1.使用多個處理器
由于gzip的壓縮和解壓縮過程都是CPU密集型的任務(wù),使用多個處理器可以大大加快處理速度??梢允褂靡韵旅?,指定處理器的數(shù)量:
gzip –fast –threads
此命令將會使用個處理器,提高處理速度。
2.壓縮比與速度的取舍
當(dāng)我們選擇壓縮或解壓縮文件時,我們可以選擇“-1”到“-9”共9個不同的等級。數(shù)字越大,壓縮比就越高,但處理速度也越慢??梢允褂靡韵旅?,指定壓縮等級:
gzip –
此命令將會以指定的壓縮等級進(jìn)行文件壓縮。
3.壓縮文件的分塊
gzip也支持將壓縮文件分塊,可以提高讀寫速度。可以使用以下命令進(jìn)行分塊:
gzip -c | split -b 100M – .gz.
此命令將會將文件進(jìn)行壓縮,并將壓縮后的文件分為多個大小為100M的塊。
四、
相關(guān)問題拓展閱讀:
- Linux命令gzip -d怎么解壓到指定路徑
- Linux中壓縮與解壓縮:
- linux解壓gz文件的命令
Linux命令gzip -d怎么解壓到指定路徑
gzip
本身并沒有解壓到指定目錄的參數(shù)。
如果是單文件壓縮,可以用-c加輸出重定向?qū)崿F(xiàn)指定解壓目錄,如:
echo hello > xxxx #創(chuàng)建一個文件
mkdir dir#創(chuàng)建一個測試目錄
gzip -c xxxx > ./dir1/xxxx.gz
rm xxxx
cd dir1
gzip -cd xxxx.gz > ../xxxx
ls -l xxxx
如果是用tar命令打包的文件
壓縮包
,可咐慶巖以直接用tar命令-C功能指定差瞎目錄,如:
tar cvf xxx.tar xxxx #文件打包
gzip xxx.tar #壓縮
tar zxvf xxx.tar.gz -C ./dir1 #解壓到指定目錄
ls -l ./dir1/衡御xxxx #查看結(jié)果
Linux中壓縮與解壓縮:
(1)使如行用tar命令備份數(shù)據(jù)的格式如下:
$ tar cvf backup.tar /home/html
上述命令是將/home/html 目錄下的所有文件打包成tar文件backup.tar。
cvf是tar的命令參數(shù)。
c代表創(chuàng)建一個渣賀嘩檔案文件,
v代表顯示每個備份的文件名字,
f表示tar創(chuàng)建的檔案文拍并件名是后面的backup.tar,
/home/html 代表tar要備份的文件或和目錄名。
(2)使用tar命令恢復(fù)數(shù)據(jù)的格式如下:
$ tar xvf backup.tar
上述命令將備份文件backup.tar恢復(fù)到當(dāng)前目錄下。
通常情況下,tar對文件進(jìn)行備份的時候并不對文件進(jìn)行壓縮,因此備份文件的尺寸非常大。使用如下的命令,將使tar在備份結(jié)束以后,自動使用gzip命令對備份文件進(jìn)行壓縮,得到一個相應(yīng)的gz文件。
$ tar zcvf backup.tar.gz /home/html
這樣,我們可以得到壓縮文件backup.tar.gz。
zip命令….
# mkdir /home/shiyanlou
# touch test
# tar cjf test.tar.bz2 test
# ll /home/shiyanlou/;
total 0
# tar xvf test.tar.bz2 -C /激帶核home/shiyanlou/明掘
test
# ll /home/shiyanlou/
total 4
-rw-r–r– 1 root root 13 Dec 15 15:42 test
# touch test1
# zip test1.zip test1
adding: test1 (stored 0%)
# unzip test1.zip -d /home/shiyanlou/
Archive: test1.zip
extracting: /行告home/shiyanlou/test1
# ll /home/shiyanlou/
total 4
-rw-r–r– 1 root root 13 Dec 15 15:42 test
-rw-r–r– 1 root root 0 Dec 15 15:43 test1
很多人在學(xué)習(xí)云計算之初,都要學(xué)習(xí)Linux,云計算服務(wù)是部署在Linux系統(tǒng)中的。不過Linux涵蓋的知識點非常多,你不僅要掌握各種操作命令,還要了解Linux文件的打包與壓縮,接下來的杭州云鋒衫計算入門課程就給大家簡單分享。
在Linux系統(tǒng)中,通常我們使用的打包壓縮工具有.tar.gz、.tar.bz2、.zip、gzip、bzip2只壓縮文件和tar只打包文件。
tar
只打包文件
tar的打包解包:
tar cvf file.tar 被打包的文件
tar xvf file.tar -C /home 指定解壓路徑
不解壓查看壓縮包內(nèi)的信息內(nèi)容:
tar -tf dir1.tar.gz
gzip壓縮解壓:
gzip 源文件
gzipd 壓縮文件
gunzip 壓縮文件
gzip -c file1 >/home/file1.gz 將文件壓縮到指定位置(注意以.gz結(jié)尾)
bzip2
只壓縮文件bzip2命令的壓縮與解壓
bzip2 源文件
bzip2 -d 壓縮文件
bunzip2 壓縮文件
bzip2 -c file1 >/opt/file1.bz2 將文件壓縮到指定位置(注意以.bz2結(jié)尾)
打包壓縮
tar與gzip命令結(jié)合可以實現(xiàn)文件打包壓縮,
用gzip壓縮tar打包后的文件,其擴(kuò)展名一般用xxx.tar.gz
tar與bzip2命令結(jié)合也可以實現(xiàn)文件的打包壓縮,
其擴(kuò)展名一般用 xxx.tar.bz2
優(yōu)缺點
bzip2有比較高的壓縮比,相應(yīng)的壓縮用時也要久一些,占用的系統(tǒng)內(nèi)存也更大;
gzip更大的優(yōu)勢就是壓縮解壓速度快,壓縮比稍遜于bzip2;
臨時性的壓縮包盡量選擇壓縮速度快的格式,如.gz;
用于持久備份或存檔的文件,盡量選擇壓縮比較大的格式,如.bz2。
最后,它們之間還有一些區(qū)別,tar可以打包文件和目錄,而bzip2和gzip只能壓縮文件。
在Linux中,軟件安裝的方式有三種:
一、源代碼形式
1、絕大多數(shù)開源軟件都是直接以原碼形式發(fā)布的
2、源代碼一般會被打包成.tar.gz的歸檔壓縮文件
3、源代碼需要編譯成為二進(jìn)制形式之后才能夠運行使用
4、源代碼基本編譯流程:
1).configure 檢查編譯環(huán)境,這里可以通過–prefix等命令配置安裝路徑(好像)
2)make對源代碼進(jìn)行編譯;
3)make insall 將生成的可執(zhí)行文件安裝到當(dāng)前計算機(jī)中
二、RPM
1、源代碼形式的特點:操作復(fù)雜、編譯時間長、極易出現(xiàn)問題、依賴關(guān)系復(fù)雜
2、為了方便,RPM(redhat package manager)
3、RPM通過將代碼基于特定平臺系統(tǒng)編譯為可執(zhí)行文件,并保存依賴關(guān)系,來簡化開源軟件的安裝管理。針對不同的系統(tǒng)設(shè)定不同的包
4、常用命令規(guī)范:linuxcast-1.2.0-30.el6.1686.rpm 包名-版本號-適用平臺-32/64-rpm
5、使用rpm –i software.rpm(安裝);
rpm -e software.rpm(卸載);
rpm –U software.rpm(升級形式安裝);
rrpm –ivh(支持通過http\ftp協(xié)議形式安裝)
-v 顯示詳細(xì)信息;-h顯示進(jìn)度條
查詢功能:rpm –qa 列出全部已經(jīng)安裝的.rpm軟件 rpm –qa |grep ***
三:YUM
1、rpm軟件包形式的管理雖然方便,但是需要手工解決軟件包的依賴關(guān)系。很多時候安裝一個軟件需要安裝1個或者多個其他軟件,手動解決時,很復(fù)雜,但是yum能解決這些問題。Yum是rpm的前端程序,主要目的是設(shè)計用來自動解決rpm的依賴關(guān)系,其特點:
1)自動解決依賴關(guān)系;2)可以對rpm進(jìn)行分組,基于組進(jìn)行安裝操作;3)引入倉庫概念,支持多個倉庫;4)配置簡單。
2、yum倉庫用來存放所有的現(xiàn)有的.rpm包,當(dāng)使用yum安裝一個rpm包時,需賀基拍要依賴關(guān)系,會自動在倉庫中查找依賴軟件并安裝。倉庫可以是本地的,也可以是HTTP、FTP、nfs形式使用的集中地、統(tǒng)一的網(wǎng)絡(luò)倉庫。
3、倉庫的配置文件/禪羨etc/yum.repos.d目錄下
4、使用:1)yum install 安裝;
)yum remove卸載;
)yum update 升級制定軟件
5、安裝的時候,會下載軟件包.Rpm在安裝,所以用國內(nèi)倉庫。改變鏡像源1)訪問地址 2)點centos使用幫助;3)按步驟來
6、查詢軟件:可以使用yumsearch *
linux解壓gz文件的命令
linux解壓gz文件命令的步驟如下所示:
工具:靈越14Pro、Windows10、命令窗口。
1、打開系統(tǒng)進(jìn)入桌面。
2、在linux系統(tǒng)下鬧罩用ctrl+alt+t打開命令窗口。
3、輸入gzip-dFileName.gz命令,即可解壓李彎和gz。
linux命令操作格式
linux命令是對Linux系統(tǒng)進(jìn)行管理的命令。對于Linux系統(tǒng)來說,無論是中央處理器、內(nèi)存、磁盤驅(qū)動器、鍵盤、鼠標(biāo),還是用戶等都是文件,Linux系統(tǒng)管理的命令是它正常運行的核心,與之前的DOS命令類似。linux命令在系統(tǒng)中有兩種類型:內(nèi)置Shell命令和Linux命令。
我們要了解的是基于Linux操作系統(tǒng)哪盯的基本控制臺命令。有一點一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)對大小寫是敏感的,也就是說,如果你輸入的命令大小寫不對的話,系統(tǒng)是不會做出你期望的響應(yīng)的。
linux gzip 源代碼的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于linux gzip 源代碼,深入探究Linux源代碼壓縮神器gzip的原理,Linux命令gzip -d怎么解壓到指定路徑,Linux中壓縮與解壓縮:,linux解壓gz文件的命令的信息別忘了在本站進(jìn)行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
新聞名稱:深入探究Linux源代碼壓縮神器gzip的原理(linuxgzip源代碼)
網(wǎng)站網(wǎng)址:http://www.dlmjj.cn/article/cdihpoi.html


咨詢
建站咨詢
