Ubuntu下解压缩

一. 命令:

.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格式,不仅压缩率较高,而且打包、解压的时间都较为快速,是较为理想的选择


三.技巧:

在对某个目录进行压缩的时候,有时候想排除掉某个目录,例如:

如果dir目录下有3个子目录,dir1、dir2、dir3。

我现在想只对dir1和dir2目录打包压缩,命令如下:


tar -zcvf dir.tar.gz --exclude=dir3 dir

Ubuntu下解压缩

上一篇:HDFS Architecture


下一篇:DataTable行转列