".gz"格式是 Linux 中最常用的壓縮格式,使用 gzip 命令進行壓縮,其基本信息如下:
命令名稱:gzip。
英文原意:compress or expand files。
所在路徑:/bin/gzip。
執(zhí)行權(quán)限:所有用戶。
功能描述:壓縮文件或目錄。
命令格式
[root@localhost ~]# gzip [選項] 源文件
選項:
-c:將壓縮數(shù)據(jù)輸出到標準輸出中,可以用于保留源文件;-d:解壓縮;
-r:壓縮目錄;
-v:顯示壓縮文件的信息;
-數(shù)字:用于指定壓縮等級,-1 壓縮等級最低,壓縮比最差;-9 壓縮比最高。默認壓縮比是 -6;【例 1】基本壓縮。
gzip 壓縮命令非常簡單,甚至不需要指定壓縮之后的壓縮包名,只需指定源文件名即可。我們來試試:
[root@localhost ~]# gzip install.log
#壓縮instal.log 文件
[root@localhost ~]# ls
anaconda-ks.cfg install.log.gz install.log.syslog#壓縮文件生成,但是源文件也消失了
【例 2】保留源文件壓縮。
在使用 gzip 命令壓縮文件時,源文件會消失,從而生成壓縮文件。這時有些人會有強迫癥,就逼問筆者:能不能在壓縮文件的時候,不讓源文件消失?好吧,也是可以的,不過很別扭。
[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】 壓縮目錄。
我們可能會想當然地認為 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)沒有打包目錄,而只把目錄下的文件進行壓縮的情況。