一. 命令:
.tar
解包:tar xvf FileName.tar
打包:tar cvf FileName.tar DirName
(注:tar是打包,不是压缩!)
———————————————
.gz
解压1:gunzip FileName.gz
解压2:gzip -d FileName.gz
压缩:gzip FileName
.tar.gz 和 .tgz
解压:tar zxvf FileName.tar.gz
压缩:tar zcvf FileName.tar.gz DirName
———————————————
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
———————————————
.bz
解压1:bzip2 -d FileName.bz
解压2:bunzip2 FileName.bz
压缩:未知
.tar.bz
解压:tar jxvf FileName.tar.bz
压缩:未知
———————————————
.Z
解压:uncompress FileName.Z
压缩:compress FileName
.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
———————————————
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
———————————————
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName
———————————————
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName
———————————————
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
———————————————
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
———————————————
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName
二.效率:
比较常用的几个tar 命令:
tar -cvf test.tar test 打包 比率接近为 1,不做压缩处理。
tar -zcvf test.tgz test 打包压缩 比率能到0.5一下。
tar -jcvf test.tar.bz test 耗时比-zcvf长,比率相近。
综合起来,在压缩比率上: tar.bz=tar.bz2>tgz>tar
占用空间与压缩比率成反比: tar.bz=tar.bz2<tgz<tar
耗费时间(打包,解压)
打包:tar.bz>tar.bz2>tgz>tar
解压: tar.bz>tar.bz2>tar>tgz
从效率角度来说,当然是耗费时间越短越好
因此,Linux下对于占用空间与耗费时间的折衷多选用tgz格式,不仅压缩率较高,而且打包、解压的时间都较为快速,是较为理想的选择 http://hovertree.com/menu/ubuntu/
三.技巧:
在对某个目录进行压缩的时候,有时候想排除掉某个目录,例如:
如果dir目录下有3个子目录,dir1、dir2、dir3。
我现在想只对dir1和dir2目录打包压缩,命令如下:
tar -zcvf dir.tar.gz --exclude=dir3 dir