总结常用工具tar的用法
这篇文章并不是对tar这个功能所有参数进行介绍,而是在日常使用几个功能做一个新的总结。
1、linux中打包和压缩是不同的概念,打包是将多个文件、目录统一打到某一个包下,方便传输,而压缩是指采用压缩算法(包括gzip、bzip2、compress算法),tar命令是不包含压缩功能的,其采用的是调用压缩工具(如带上-z代表采用gzip解压缩算法)来处理压缩打包,当然了,压缩出来的包名是我们自定义的,一般按照规范命名。常用组合参数:
a、将某些文件归档压缩到一个包中: tar -zcvf js.tar a.log b.log
b、将某个压缩包解压到当前目录: tar -zxvf js.tar
c、预览某个压缩包的内容 tar -ztvf js.tar
总结:这三个操作都是tar -参数 压缩包名的格式
2、tar解压的时候默认都是解压到当前目录下,那么如果想指定解压目录的时候怎么搞?带上-C参数就可以解决这个问题了。
tar -zxvf js.tar -C /tmp/js
3、在预览了压缩包之后如果想只解压出某个文件,要怎么处理?
a、解压出js.tar下的a.log:
tar -zxvf js.tar a.log
b、解压出js.tar下的a.log、b.log到/tmp/js下:
tar -zxvf js.tar -C /tmp/js a.log b.log
总结:需要指定解压文件时这个文件串都是跟在整个命令后面的。
4、解压文件不覆盖原有文件:
a、-k,带上这个参数即可让解压缩出来的文件不覆盖到原先已存在的文件,默认是会覆盖的;
b、-m,带上这个参数解压出来的文件会以新建文件的姿态(即atime为当前时间)去覆盖原先已存在的文件。
5、压缩归档文件时保留当前用户权限:-p参数。
更多的操作说明参看: