在windows下我們接觸最多的壓縮文件就是.rar格式的了。但在linux下這樣的格式是不能識(shí)別的,它有自己所特有的壓縮工具。但有一種文件在windows和linux下都能使用那就是.zip格式的文件了。壓縮的好處不用筆者介紹相信你也曉得吧,它不僅能節(jié)省磁盤空間而且在傳輸?shù)臅r(shí)候還能節(jié)省網(wǎng)絡(luò)帶寬呢。
在linux下最常見的壓縮文件通常都是以.tar.gz 為結(jié)尾的,除此之外還有.tar, .gz, .bz2, .zip等等。以前也介紹過linux系統(tǒng)中的后綴名其實(shí)要不要無所謂,但是對(duì)于壓縮文件來講必須要帶上。這是為了判斷壓縮文件是由哪種壓縮工具所壓縮,而后才能去正確的解壓縮這個(gè)文件。以下介紹常見的后綴名所對(duì)應(yīng)的壓縮工具。
.gz gzip 壓縮工具壓縮的文件
.bz2 bzip2 壓縮工具壓縮的文件
.tar tar 打包程序打包的文件(tar并沒有壓縮功能,只是把一個(gè)目錄合并成一個(gè)文件)
.tar.gz 可以理解為先用tar打包,然后再gzip壓縮
.tar.bz2 同上,先用tar打包,然后再bzip2壓縮
【gzip】
語法: gzip [-d#] filename 其中#為1-9的數(shù)字
-d :解壓縮時(shí)使用
-# :壓縮等級(jí),1壓縮最差,9壓縮最好,6為默認(rèn)
http://wiki.jikexueyuan.com/project/linux/images/10_1.png.jpg" alt="10_1.png.jpg" />
壓縮test.txt后,則變成了test.txt.gz
http://wiki.jikexueyuan.com/project/linux/images/10_7.png.jpg" alt="10_7.png.jpg" />
用-d解壓縮
要注意的是,gzip不可以壓縮目錄
http://wiki.jikexueyuan.com/project/linux/images/10_8.png.jpg" alt="10_8.png.jpg" />
【bzip2】
語法:bzip2 [-dz] filename
-d :解壓縮
-z :壓縮
http://wiki.jikexueyuan.com/project/linux/images/10_9.png.jpg" alt="10_9.png.jpg" />
其實(shí)-z參數(shù)是可以省略掉的,你不妨試試
http://wiki.jikexueyuan.com/project/linux/images/10_10.png.jpg" alt="10_10.png.jpg" />
跟gzip的解壓類似,也是用-d解壓。
【tar】
語法:tar [-zjxcvfpP] filename
-z :是否同時(shí)用gzip壓縮
-j :是否同時(shí)用bzip2壓縮
-x :解包或者解壓縮
-t :查看tar包里面的文件
-c :建立一個(gè)tar包或者壓縮文件包
-v :可視化
-f :后面跟文件名,壓縮時(shí)跟-f文件名,意思是壓縮后的文件名為filename,解壓時(shí)跟-f文件名,意思是解壓filename。請(qǐng)注意,如果是多個(gè)參數(shù)組合的情況下帶有-f,請(qǐng)把f寫到最后面。
-p :使用原文件的屬性,壓縮前什么屬性壓縮后還什么屬性。(不常用)
-P :可以使用絕對(duì)路徑。(不常用)
--exclude filename :在打包或者壓縮時(shí),不要將filename文件包括在內(nèi)。(不常用)
http://wiki.jikexueyuan.com/project/linux/images/10_11.png.jpg" alt="10_11.png.jpg" />
首先在test目錄下建立test111目錄,然后在test111目錄下建立test2.txt,并寫入”nihao”到test2.txt中,接著是用tar把test111打包成test111.tar。請(qǐng)記住-f參數(shù)后跟的是打包后的文件名。
http://wiki.jikexueyuan.com/project/linux/images/10_21.png.jpg" alt="10_21.png.jpg" />
刪除原來的test111目錄,然后解包test111.tar,不管是打包還是解包,原來的文件是不會(huì)刪除的。
http://wiki.jikexueyuan.com/project/linux/images/10_22.png.jpg" alt="10_22.png.jpg" />
打包的同時(shí)使用gzip壓縮
http://wiki.jikexueyuan.com/project/linux/images/10_23.png.jpg" alt="10_23.png.jpg" />
用-tf 跟包名來查看包或者壓縮包內(nèi)的文件都有哪些
http://wiki.jikexueyuan.com/project/linux/images/10_24.png.jpg" alt="10_24.png.jpg" />
先刪除test111,然后用tar -zxvf 來解壓.tar.gz的壓縮包。
http://wiki.jikexueyuan.com/project/linux/images/10_25.png.jpg" alt="10_25.png.jpg" />
-jcvf 打包的同時(shí)用bzip2壓縮,-tf同樣可以查看.tar.bz2的壓縮包
http://wiki.jikexueyuan.com/project/linux/images/10_26.png.jpg" alt="10_26.png.jpg" />
-jxvf解壓縮.tar.bz2的壓縮包
http://wiki.jikexueyuan.com/project/linux/images/10_27.png.jpg" alt="10_27.png.jpg" />
--exclude參數(shù)的作用就是打包的時(shí)候過濾掉某些文件,如果想過濾多個(gè)文件怎么辦
http://wiki.jikexueyuan.com/project/linux/images/10_28.png.jpg" alt="10_28.png.jpg" />
只能是繼續(xù)跟 --exclude filename了。