天天看點

tar指令詳解

-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,如需轉載請自行聯系原作者

上一篇: xargs應用
下一篇: LVM簡介

繼續閱讀