tar切换目录和排除文件详解

 

tar打包时包里的目录与tar参数给的目录相同

拿压缩/var/www/linuxphp.org目录为例
方法1
cd /root/
tar jcf test.tar.bz2 /var/www/linuxphp.org
这里第一个斜杠会被忽略所以解压后目录形式为var/www/linuxphp/
方法2
cd /var/www/
tar jcf test.tar.bz2 linuxphp.org
则解压后目录形式为linuxphp.org
 
那如果我要在其它目录却想得到方法2的压缩结果怎么办?
方法3
cd /root/
tar jcf test.tar.bz2 -C /var/www/ linuxphp.org
 

常有一些目录不方便打包,用--exclude做下排除 

这里也要说明一下--exclude是按生成的压缩包里文件的相对路径做排除的,这里给出上面三种方法对应的排除方案
方法1
cd /root/
tar jcf test.tar.bz2 /var/www/linuxphp.org  --exclude="/var/www/linuxphp.org/upload_files/*"  --exclude="/var/www/linuxphp.org/media/*"
方法2
cd /var/www/
tar jcf test.tar.bz2 linuxphp.org --exclude="linuxphp.org/upload_files/*"  --exclude="linuxphp.org/media/*"
方法3
cd /root/
tar jcf test.tar.bz2 -C /var/www/ linuxphp.org --exclude="linuxphp.org/upload_files/*"  --exclude="linuxphp.org/media/*"
 

是不是发现-C参数也很有用,那解压是不是也可以用呢?

cd /root/
tar jxf test.tar.bz2 -C /var/www/
ls -l /var/www/
看下是不是解压成功了呢。

Tags: 解压 , tar

上一篇: Discuz!发送邮件代码支持Gmail   下一篇: embed显示flv视频,不常用IE的人伤不起

提交疑问

回顶部