本文由秀依林楓提供友情贊助,首發(fā)于爛泥行天下。
tar命令一般是做打包和解壓使用,有關(guān)tar命令的使用。我們可以通過(guò)幫助文檔進(jìn)行查看,如下:
tar –help
man tar
tar有幾個(gè)比較重要的參數(shù)如下:
-c 創(chuàng)建一個(gè)新歸檔
-f 當(dāng)與-c選項(xiàng)一起使用時(shí),創(chuàng)建的tar文件使用該選項(xiàng)的指定的文件名;當(dāng)與-x選項(xiàng)一起使用時(shí),則解包該選項(xiàng)指定的歸檔。該參數(shù)一定放在所有參數(shù)的最后面。
-t 顯示tar文件中的文件列表
-v 顯示歸檔或解檔的進(jìn)度
-z 使用gzip來(lái)壓縮tar文件
-j 使用bzip2來(lái)壓縮tar文件
-x 解壓tar壓縮包,
-C 解壓到新的目錄,該命令是大寫(xiě)。
-p 保留備份數(shù)據(jù)的原本權(quán)限和屬性
以上命令需要特別注意-c、-t、-x不能在一個(gè)命令中同時(shí)出現(xiàn)。
現(xiàn)在我們先來(lái)講解tar打包的使用方法。注意在此我們?nèi)恳詆zip格式的文件為例,如果是bzip文件把參數(shù)-z修改為-j即可。
將ilanni目錄進(jìn)行打包,打包后的文件為ilanni.tar.gz,并將打包后存放到/testtar目錄下:
tar -cvzf /testtar/ilanni.tar.gz ilanni
或者
tar -czf /testtar/ilanni.tar.gz ilanni
其中參數(shù)-v是可有可無(wú)。
通過(guò)上述兩張圖片我們可以看出,已經(jīng)打包成功。剛剛是把本地的文件打包到其他目錄,如果把A目錄下的文件打包到B目錄如下:
tar -czf /testtar/tar.tar.gz /tar
該條命令的作用是把/tar目錄進(jìn)行打包,打包完成后以tar.tar.gz命名文件存放到/testtar目錄下。
以上都是在同一臺(tái)服務(wù)器上進(jìn)行的,如果我想把本地的文件打包后,上傳到另外一臺(tái)服務(wù)器上。操作如下:
ssh [email protected] tar -czf /ks/tar.tar.gz /tar/
該條命令的意思是把/tar目錄打包到192.168.1.102服務(wù)器的/ks目錄下。
通過(guò)上述兩張截圖,我們可以看到已經(jīng)成功的把/tar打包到192.168.1.102服務(wù)器的/ks目錄下。
上面是對(duì)目錄進(jìn)行打包,如果是對(duì)單獨(dú)的文件進(jìn)行打包也很簡(jiǎn)單。我們來(lái)測(cè)試下,如果兩個(gè)文件在不同的目錄,打包到一個(gè)壓縮包中。如下
tar -zvcf test.tar.gz ./tftp.txt ./ilanni/iso.txt
tar -tvf test.tar.gz
通過(guò)上面這張截圖,我們可以很清楚的看出。我們現(xiàn)在已經(jīng)把當(dāng)前目錄下的tftp.txt文件和該目錄下的ilanni目錄下的iso.txt文件打包到同一個(gè)壓縮包中。
以上是有關(guān)tar打包的相關(guān)使用方法。下面我們來(lái)介紹使用tar解壓壓縮包的方法。按照網(wǎng)絡(luò)上的說(shuō)法對(duì)于不同的壓縮包比如gzip壓縮包和bzip2壓縮包,我們?cè)俳鈮簳r(shí),要使用不同的命令。
對(duì)于gzip壓縮包,使用tar –zxf ilanni.tar.gz解壓。對(duì)于bzip壓縮包,使用tar –jxf ks.bz2解壓。
其實(shí)根本沒(méi)有那個(gè)必要,只要是tar壓縮包,我們直接使用tar –xf進(jìn)行解壓即可。如下:
tar -xf ilanni.tar.gz
tar -xf ks.bz2
通過(guò)上圖,我們可以看到只要是tar壓縮包的解壓我們就可以直接使用tar -xf進(jìn)行解壓。
以上我們是把壓縮包解壓到同一目錄下,下面我們來(lái)測(cè)試下把壓縮包解壓到另外一個(gè)目錄。如下:
tar -xf ilanni.tar.gz -C /testtar/
該條命令的意思是把當(dāng)前目錄下ilanni.tar.gz解壓到/testtar/目錄下。
通過(guò)上圖,我們可以看到ilanni.tar.gz已經(jīng)成功的解壓到/testtar/目錄下。
以上我們解壓的是整個(gè)目錄,假如說(shuō)這個(gè)壓縮包是一個(gè)文件夾的話,而里面又有很多的文件,我們現(xiàn)在只想把其中的一個(gè)文件解壓出來(lái)。操作如下:
先查看該壓縮包的目錄結(jié)構(gòu),使用如下命令:
tar -tvf ilanni.tar.gz
注意圖中黃色部分標(biāo)記出來(lái)的ilanni/tftp.txt,我們現(xiàn)在就是要把tftp.txt解壓出來(lái),其他的文件不進(jìn)行解壓。而且這個(gè)路徑也要記錄下,等會(huì)解壓要使用到。
現(xiàn)在開(kāi)始解壓,使用如下命令:
tar -xf ilanni.tar.gz ilanni/tftp.txt
可以看到現(xiàn)在已經(jīng)把tftp.txt文件解壓出來(lái)了。
如果多個(gè)文件,但又不是全部解壓。可以使用類型的命令。如下:
tar -xf ilanni.tar.gz ilanni/{tftp.txt,iso.txt}
通過(guò)上圖可以看到,我們現(xiàn)在已經(jīng)只把tftp.txt和iso.txt。兩個(gè)文件解壓出來(lái)了。
到此有關(guān)tar的基本使用介紹結(jié)束。
新聞熱點(diǎn)
疑難解答
圖片精選