濮阳杆衣贸易有限公司

主頁 > 知識庫 > Linux gzip命令壓縮文件實現(xiàn)原理及代碼實例

Linux gzip命令壓縮文件實現(xiàn)原理及代碼實例

熱門標(biāo)簽:電話機(jī)器人服務(wù)差 電銷機(jī)器人對公司貢獻(xiàn) 山東400電話如何辦理 高德地圖標(biāo)注在建線路 蘭州語音電銷機(jī)器人軟件 ai電銷機(jī)器人 如何開發(fā) 智能外呼系統(tǒng)如何部署 宿州防封外呼系統(tǒng)廠家 濟(jì)源電話外呼系統(tǒng)怎么樣

gzip 是 Linux 系統(tǒng)中經(jīng)常用來對文件進(jìn)行壓縮和解壓縮的命令,通過此命令壓縮得到的新文件,其擴(kuò)展名通常標(biāo)記為“.gz”。

再強(qiáng)調(diào)一下,gzip 命令只能用來壓縮文件,不能壓縮目錄,即便指定了目錄,也只能壓縮目錄內(nèi)的所有文件。

gzip 命令的基本格式如下:

[root@localhost ~]# gzip [選項] 源文件

命令中的源文件,當(dāng)進(jìn)行壓縮操作時,指的是普通文件;當(dāng)進(jìn)行解壓縮操作時,指的是壓縮文件。該命令常用的選項及含義如表 1 所示。

表 1 gzip 命令常用選項及含義

選項 含義
-c 將壓縮數(shù)據(jù)輸出到標(biāo)準(zhǔn)輸出中,并保留源文件。
-d 對壓縮文件進(jìn)行解壓縮。
-r 遞歸壓縮指定目錄下以及子目錄下的所有文件。
-v 對于每個壓縮和解壓縮的文件,顯示相應(yīng)的文件名和壓縮比。
-l 對每一個壓縮文件,顯示以下字段:
  • 壓縮文件的大??;
  • 未壓縮文件的大?。?/li>
  • 壓縮比;
  • 未壓縮文件的名稱。
-數(shù)字 用于指定壓縮等級,-1 壓縮等級最低,壓縮比最差;-9 壓縮比最高。默認(rèn)壓縮比是 -6。

【例 1】基本壓縮

gzip 壓縮命令非常簡單,甚至不需要指定壓縮之后的壓縮包名,只需指定源文件名即可。我們來試試:

[root@localhost ~]# gzip install.log
#壓縮instal.log 文件
[root@localhost ~]# ls
anaconda-ks.cfg install.log.gz install.log.syslog
#壓縮文件生成,但是源文件也消失了

【例 2】保留源文件壓縮

在使用 gzip 命令壓縮文件時,源文件會消失,從而生成壓縮文件。這時有些人會有強(qiáng)迫癥,就逼問筆者:能不能在壓縮文件的時候,不讓源文件消失?好吧,也是可以的,不過很別扭。

[root@localhost ~]# gzip -c anaconda-ks.cfg >anaconda-ks.cfg.gz
#使用-c選項,但是不讓壓縮數(shù)據(jù)輸出到屏幕上,而是重定向到壓縮文件中,這樣可以縮文件的同時不刪除源文件
[root@localhost ~]# ls
anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog
#可以看到壓縮文件和源文件都存在

【例 3】 壓縮目錄

我們可能會想當(dāng)然地認(rèn)為 gzip 命令可以壓縮目錄。 我們來試試:

[root@localhost ~]# mkdir test
[root@localhost ~]# touch test/test1
[root@localhost ~]# touch test/test2
[root@localhost ~]# touch test/test3 #建立測試目錄,并在里面建立幾個測試文件
[root@localhost ~]# gzip -r test/
#壓縮目錄,并沒有報錯
[root@localhost ~]# ls
anaconda-ks.cfg anaconda-ks.cfg.gz install.log.gz install.log.syslog test
#但是查看發(fā)現(xiàn)test目錄依然存在,并沒有變?yōu)閴嚎s文件
[root@localhost ~]# ls test/
testl .gz test2.gz test3.gz
#原來gzip命令不會打包目錄,而是把目錄下所有的子文件分別壓縮

在 Linux 中,打包和壓縮是分開處理的。而 gzip 命令只會壓縮,不能打包,所以才會出現(xiàn)沒有打包目錄,而只把目錄下的文件進(jìn)行壓縮的情況。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:佛山 巴中 安陽 南寧 畢節(jié) 晉中 衡水 云南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Linux gzip命令壓縮文件實現(xiàn)原理及代碼實例》,本文關(guān)鍵詞  Linux,gzip,命令,壓縮,文件,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Linux gzip命令壓縮文件實現(xiàn)原理及代碼實例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Linux gzip命令壓縮文件實現(xiàn)原理及代碼實例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    四平市| 奉新县| 霍州市| 延长县| 安徽省| 鄂伦春自治旗| 通河县| 寿宁县| 深泽县| 鄂托克前旗| 桦川县| 白沙| 潮安县| 博野县| 德格县| 莫力| 庄河市| 成武县| 会同县| 昭通市| 荔波县| 周至县| 玛纳斯县| 淅川县| 黎川县| 来凤县| 上犹县| 松溪县| 河北区| 昌江| 南宁市| 枣庄市| 拉萨市| 宜昌市| 乌鲁木齐县| 思南县| 霍林郭勒市| 马边| 海淀区| 绥芬河市| 伊春市|