首页 > 代码库 > tar整理
tar整理
tar整理
1. 压缩文档中的绝对路径
man tar:
-P, --absolute-names don’t strip leading ‘/’s from file names
测试:
# 压缩时默认不处理‘/‘, 以相对路径处理#tar -cvf data1.tar /tmp/data1/tar: Removing leading `/‘ from member names/tmp/data1/tar: /tmp/data1/data1.tar: file is the archive; not dumped/tmp/data1/b.txt/tmp/data1/a.txt# 查看, 压缩的信息中路径为相对路径#tar -tvf data1.tar drwxr-xr-x root/root 0 2014-11-22 11:12 tmp/data1/-rw-r--r-- root/root 0 2014-11-22 11:12 tmp/data1/b.txt-rw-r--r-- root/root 0 2014-11-22 11:12 tmp/data1/a.txt# 压缩时指明不忽略‘/‘, 以绝对路径处理#tar -P -cvf data1.tar /tmp/data1//tmp/data1/tar: /tmp/data1/data1.tar: file is the archive; not dumped/tmp/data1/b.txt/tmp/data1/a.txt# 查看, 在不指明使用绝对路径时, 将忽略压缩文档中的绝对路径#tar -tvf data1.tar tar: Removing leading `/‘ from member namesdrwxr-xr-x root/root 0 2014-11-22 11:16 /tmp/data1/-rw-r--r-- root/root 0 2014-11-22 11:16 /tmp/data1/data1.tar-rw-r--r-- root/root 0 2014-11-22 11:12 /tmp/data1/b.txt-rw-r--r-- root/root 0 2014-11-22 11:12 /tmp/data1/a.txt# 查看, 指明使用绝对路径#tar -P -tvf data1.tar drwxr-xr-x root/root 0 2014-11-22 11:16 /tmp/data1/-rw-r--r-- root/root 0 2014-11-22 11:16 /tmp/data1/data1.tar-rw-r--r-- root/root 0 2014-11-22 11:12 /tmp/data1/b.txt-rw-r--r-- root/root 0 2014-11-22 11:12 /tmp/data1/a.txt
所以, 在解压不包含绝对路径的压缩文档时不会解压到对应的绝对路径, 在解压包含绝对路径的压缩文档时, 如果不指明使用绝对路径, 同样不会把文件解压在对应的绝对路径. 同时, 在解压包含绝对路径的压缩文档时, 如果指明使用绝对路径, 此时-C参数失效
2. tar压缩格式对比
每次压缩资料时都是tar -cf, 现在要对一个较大的文件打包, 于是对各种压缩格式处理后的文件大小进行了对比:
tar -cvf data1.tar /tmp/data1/ # 不压缩tar -cZvf data1.tar.z /tmp/data1/ # 普通压缩tar -czvf data1.tar.gz /tmp/data1/ # gzip压缩tar -cjvf data1.tar.bz2 /tmp/data1/ # bzip2压缩tar -cJvf data1.tar.xz /tmp/data1/ # xz压缩du -sh data1*98M data1.tar67M data1.tar.z38M data1.tar.gz36M data1.tar.bz227M data1.tar.xz
简单的测试表明, xz格式的压缩后占用更少的空间. 当然, 这里只是从空间上进行对比.
tar整理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。