-c 建立新包
-r 追加新檔案
-f 使用file
-x 解壓包
-z 用gzip壓縮
-w 每異步需确認
-T<範本檔案>或--files-from=<範本檔案> 指定範本檔案,其内含有一個或多個範本樣式,讓tar解開或建立符合設定條件的檔案。
tar cvfz /tmp/1.tgz /root/ 有根目錄,有隐藏檔案
tar cvfz /tmp/1.tgz /root/* 沒有根目錄,沒隐藏檔案
tar xvfz /tmp/1.tgz -C /root/ 解壓到指定目錄
tar tvf /tmp/1.tgz 檢視包内容
tar rvf /tmp/1.tar /root/* 追加檔案到tar包
tar vf /tmp/1.tar --delete root/anaconda-ks.cfg 删除包中檔案
tar vf /tmp/1.tar -A /tmp/2.tar 2個包合并
tar cvfz /tmp/1.tgz /root/* --exclude=root/anaconda-ks.cfg 排除一個檔案
tar cvfz /tmp/1.tgz /root/* --exclude={root/anaconda-ks.cfg,root/install.log,*.syslog} 排除多個檔案及同一類型檔案
組合使用
tar cvfz /tmp/1.tgz weblogic10 --exclude weblogic10/bea/user_projects/domains
cd /u01/weblogic10/bea/user_projects
tar cvfz /tmp/2.tgz domains/mis_mobile/
cd /tmp/
tar xvfz 1.tgz
mv /tmp/2.tgz weblogic10/bea/user_projects/
tar xvfz 2.tgz
根據-T參數後的樣式檔案list.txt,打包/etc中指定的檔案,同樣的,list.txt預設也是相對路徑的
find . -name "*.d" -o -name "*.conf" > list.txt
tar -T list.txt -czvf etc.tar.gz /etc
--------------------------------------------------------------------------------------------
本地複制檔案:
tar cvf - .|tar xvf - -C /tmp/leo/ 有根目錄,有隐藏檔案
tar cvf - *|tar xvf - -C /tmp/leo/ 沒有根目錄,沒隐藏檔案
遠端複制檔案:
tar cvf - .|ssh 192.168.0.10 tar xvf - -C /tmp/leo 有根目錄,有隐藏檔案
tar cvf - *|ssh 192.168.0.10 tar xvf - -C /tmp/leo 沒有根目錄,沒隐藏檔案
ssh 192.168.0.10 "cd /root/;tar cvf - ."|tar xvf - 遠端的檔案複制到本地
"-"代表标準輸出和輸入
本文轉自leonardos51CTO部落格,原文連結: http://blog.51cto.com/leomars/507277,如需轉載請自行聯系原作者