##tar命令参数
 
  
tar  zcvf   xxx.tar.gz /etc    
    ##前:打包压缩后的文件名,后:被打包压缩的文件或目录
tar zxvf xxx.tgz -C /etc/    
    ##将xxx.tgz文件解压到指定路径下


-z

调用gzip工具压缩,生成或解压.gz扩展的压缩文件

-c

--create,创建tar包

-v

显示输出过程信息

-f

--file对普通文件打包压缩

--exclude=x

排除不需要处理的文件或目录,不进行打包压缩

--exclude=xx1 --exclude=xx2    同时排除多个文件不进行打包压缩

tar zcvf a.tar.gz --exclude=xx1 --exclude=xx2 /root/tar-test/

-X

--exclude-from file 指定文件列表的形式排除不需要处理的文件或目录


     ##将文件中指定的文件排除,不进行打包压缩。可以在paichu.list文件中指定同时指定多个文件

tar zcvfX a.tar.gz paichu.list /root/tar-test/

-t 

--list    查看压缩包才内容列表

tar -tf xxx.tar.gz    查看压缩包内容

-x

解包

tar zxvf a.tar.gz    将.tar.gz解压

     ##默认解压到当前目录

-C

指定目录,如将.tar.gz文件压缩与解压缩到指定目录下

tar zxvf a.tar.gz -C /root/tar-test-x/    

     ##解压.tar.gz文件,并放到指定路径下

tar zcvf a,tar.gz /root/test0511 -C /tmp    

     ##将文件目录打包压缩,并将.tar.gz文件放到指定路径下


    


实例

#()将/root/test0511/目录下所有文件进行打包压缩-->test-tar.tar.gz中


1)find /root/test0511/ -type f |xargs tar zcvf test-tar.tar.gz
2)tar zcvf test-tar.tar.gz `find /root/test0511 -type f` 
    ####上两个方法都是将查找到结果一起打包压缩
3)find /root/test0511/ -type f -exec tar zcvf test-tar.tar.gz {} \;    
    #####错误方法:查找到一个-->test-tar.tar.gz,导致的后果就后一个打包进去,把前者替换,这样对磁盘I/O性能使用很大


#()是否把父目录一起压缩到包内



tar zcvf test-tar.tgz /root/test0511/
    ##则默认将/root/test0511目录绝对路径及该路径所有文件和目录同时压缩
tar zcvf /data/test-tar2.tar.gz -C /root/test0511/ test    
    ##则只将/root/test0511目录下的test/*所有文件压缩到指定文件,不把/root/test0511压缩进去


https://blog.51cto.com/jschu/1852800