tar exclude用法

目标:打包/usr/local下的这个文件夹目录sinon,并且不包含sinon里面的文件夹目录logs里面的内容。

当前目录 cd /usr/local/sinon

操作:tar -cjvf sinon.tar.bz2 . --exclude=logs

结果:打包顺利完成。

解压出现的问题:当使用  tar -xjvf sinon.tar.bz2    时,会把文件解压到当前目录下,而不是新生成的sinon文件夹下。

操作:tar -cjvf sinon.tar.bz2 . --exclude=logs/

结果:失败,logs下的文件仍然被打包进来

 

当前目录 /usr/local     

操作:tar -cjvf sinon.tar.bz2 sinon --exclude=sinon/logs/

结果:这个命令将会打包当前目录下的sinon文件夹,但其--exclude选项并没起作用,logs文件夹下的文件还是被打包进来。

 

操作:tar -cjvf sinon.tar.bz2 --exclude=sinon/logs/ sinon

结果:这个命令将会打包当前目录下的sinon文件夹,但其--exclude选项并没起作用,logs文件夹下的文件还是被打包进来。

其他测试操作:tar -cjvf sinon.tar.bz2 sinon --exclude=./sinon/logs/

                        tar -cjvf sinon.tar.bz2 sinon --exclude=./sinon/logs/*.*

                        tar -cjvf sinon.tar.bz2 sinon --exclude=./sinon/logs

结果:以上命令将会打包当前目录下的sinon文件夹,但其--exclude选项并没起作用,logs文件夹下的文件还是被打包进来。

成功结果:  tar -cjvf sinon.tar.bz2 sinon --exclude=sinon/logs

  或者          tar -cjvf sinon.tar.bz2 --exclude=sinon/logs sinon

解压效果也良好:先在当前目录下生成文件夹sinon,再在sinon下解压.


多目录就多写几个--exclude例如:

tar -cjvf sinon.tar.bz2 sinon --exclude=sinon/a --exclude=sinon/b

posted on 2012-02-27 17:10  kudosharry  阅读(8063)  评论(0编辑  收藏  举报

导航