打包成tar.gz但略過.svn目錄

前言

[root@www ~]# tar [-j|-z] [cv] [-f 建立的檔名] filename... <==打包與壓縮

[root@www ~]# tar [-j|-z] [tv] [-f 建立的檔名] <==察看檔名

[root@www ~]# tar [-j|-z] [xv] [-f 建立的檔名] [-C 目錄] <==解壓縮

選項與參數:

-c :建立打包檔案,可搭配 -v 來察看過程中被打包的檔名(filename)

-t :察看打包檔案的內容含有哪些檔名,重點在察看『檔名』就是了;

-x :解打包或解壓縮的功能,可以搭配 -C (大寫) 在特定目錄解開

特別留意的是, -c, -t, -x 不可同時出現在一串指令列中。

-j :透過 bzip2 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.bz2

-z :透過 gzip 的支援進行壓縮/解壓縮:此時檔名最好為 *.tar.gz

-v :在壓縮/解壓縮的過程中,將正在處理的檔名顯示出來!

-f filename:-f 後面要立刻接要被處理的檔名!建議 -f 單獨寫一個選項囉!

-C 目錄 :這個選項用在解壓縮,若要在特定目錄解壓縮,可以使用這個選項。

其他後續練習會使用到的選項介紹:

-p :保留備份資料的原本權限與屬性,常用於備份(-c)重要的設定檔

-P :保留絕對路徑,亦即允許備份資料中含有根目錄存在之意;

--exclude=FILE:在壓縮的過程中,不要將 FILE 打包!

範例

將某svn 控制的專案打包成tar.gz,但不要包到 .svn 內的資料

$ tar -zcvf test.tar.gz ./XXX --exclude=.svn