这么多年来,数据压缩对我们来说是非常有用的。无论是在邮件中发送的图片用的zip文件还是在服务器压缩数据文件,我们都可以让下载更容易或者有效
的节约磁盘空间。某些压缩格式有时允许我们以60%的比率(甚至更高)压缩文件。下面我将会给大家演示如何用这些命令在Linux下面去压缩文件或者目
录。我们将学习zip, tar, tar.gz和tar.bz2等压缩格式的基本用法。这几个是在Linux里面常用的压缩格式。
在我们探究这些用法之前,我想先跟大家分享一下使用不同压缩格式的经验。当然,我这里讲到的只是其中的一些用法,除我讲到的之外,他们还有更多的地
方值得我们探讨。我已经意识到我需要了解两到三种压缩格式,才能更好的使用他们。zip格式是第一个需要了解的格式。因为它实际上已成为压缩文件的标准选
择,而且它在windows上也能使用。我经常用zip格式压缩那些需要共享给windows用户的文件。如果只是共享给linux用户或者Mac用户,
那我偏向于选择tar.gz格式。
ZIP
zip可能是目前使用得最多的文档压缩格式。它最大的优点就是在不同的操作系统平台,比如Linux, Windows以及Mac OS,上使用。缺点就是支持的压缩率不是很高,而tar.gz和tar.gz2在压缩率方面做得非常好。闲话少说,我们步入正题吧:
我们可以使用下列的命令压缩一个目录:
# zip -r archive_name.zip directory_to_compress
下面是如果解压一个zip文档:
# unzip archive_name.zip
TAR
Tar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,他仅仅只是一个打包工具,并不负责压缩。下面是如何打包一个目录:
# tar -cvf archive_name.tar directory_to_compress
如何解包:
# tar -xvf archive_name.tar.gz
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -xvf archive_name.tar -C /tmp/extract_here/
TAR.GZ
这种格式是我使用得最多的压缩格式。它在压缩时不会占用太多CPU的,而且可以得到一个非常理想的压缩率。使用下面这种格式去压缩一个目录:
# tar -zcvf archive_name.tar.gz directory_to_compress
解压缩:
# tar -zxvf archive_name.tar.gz
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -zxvf archive_name.tar.gz -C /tmp/extract_here/
TAR.BZ2
这种压缩格式是我们提到的所有方式中压缩率最好的。当然,这也就意味着,它比前面的方式要占用更多的CPU与时间。这个就是你如何使用tar.bz2进行压缩。
# tar -jcvf archive_name.tar.bz2 directory_to_compress
上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径:
# tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/
数据压缩是非常有用的,尤其是对于备份来说。所以,你现在应该考虑在你的备份脚本中使用你在这里学到的压缩方式备份你基本的规则文件以减小你备份文件的大小。
过段时间之后,你就会意识到,在压缩率与CPU占用时间上会有一个平衡,你也要学会如何去权衡什么时候你需要一个快但是压缩率低,什么时候需要一个压缩率高但是CPU点用高的压缩方式,然后你才能避免无谓的空间与时间。
来源:http://www.simplehelp.net/2008/12/15/how-to-create-and-extract-zip-tar-targz-and-tarbz2-files-in-linux/
译者注:
原作者弄错了一个概念。tar这个命令并没有压缩的功能,它只是一个打包的命令。tar.gz与tar.bz2都是在tar命令中调用了别的压缩命
令实现了一个压缩的功能,实际是实行一个先打包后压缩的过程,而且,tar.gz与tar.bz2只是一个公认的一个通行后缀而已,并不是一种压缩格式
(真正实现压缩的是gzip与bzip2,这是后话。),tar.gz在很多时候,也会被简写成tgz。
在译文中,大部分地方尊重原作者,只是在tar的功能解释时,我做了修改。
分享到:
相关推荐
Linux下创建与解压zip, tar, tar.gz和tar.bz2 Linux下创建与解压zip, tar, tar.gz和tar.bz2 Linux下创建与解压zip, tar, tar.gz和tar.bz2
如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件
python实现 压缩解压缩各种文件,如zip,gzip,tar.gz,.bz2.
tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2 tar –cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将...
gcc4.8.2gmp-6.1.2.tar.xzmpfr-3.1.5.tar.gzmpc-1.0.3.tar.gz
php-4.3.11.tar.bz2 php-4.3.11.tar.gz php-4.3.11-installer.exe php-4.3.11-Win32.zip php-4.4.9.tar.bz2 php-4.4.9.tar.gz php-5.0.5.tar.gz php-5.1.6.tar.bz2 php-5.1.6.tar.gz php-5.2.17.tar.bz2 ...
简要的介绍了linux下的tar、gzip、gunzip、bzip2、bunzip2、compress、uncompress、 zip、unzip、rar、unrar等压缩程序,使用它们对.tar、.gz、.tar.gz、.tgz、.bz2、.tar.bz2、.Z、.tar.Z、 .zip、.rar这10种压缩...
storm搭建所需资源
ffmpeg-3.0.2.tar.bz2 a52dec-0.7.4.tar.gz amrnb-11.0.0.0.tar.bz2 amrwb-11.0.0.0.tar.bz2 faac-1.28.tar.gz faad2-2.7.tar.gz lame-3.99.5.tar.gz last_x264.tar.bz2 libdca-0.0.5.tar.bz2 libogg-1.3.2.zip ...
--with-bz2 \ --enable-calendar \ --with-curl \ --with-cdb \ --enable-dom \ --enable-exif \ --enable-fileinfo \ --enable-filter \ --with-pcre-dir \ --enable-ftp \ --with-gd \ --with-openssl-...
amrnb-10.0.0.0.tar.bz2 == > amrnb-10.0.0.0.tar.gz (.bz2安装时有下载依赖,.gz已经把依赖下载下来,重新整理了一下) faac-1.28.tar.gz lame-3.99.5.tar.gz libdca-0.0.5.tar.bz2 libvorbis-1.1.2.tar.gz yasm...
pyexcelerator-0.6.4.1.tar.bz2 pymemcache-1.3.5.tar.gz pymssql-2.0.0b1-dev-20111018.tar.gz pymssql-2.0.0b1-dev-20111019.tar.gz pymssql-2.0.0b1-dev-20130108.tar.gz pymssql-2.0.0b1-dev-20130403.tar.gz ...
libxml2-2.6.23.tar.bz2 libxml2-2.7.8.tar.gz libxml2-devel-2.7.8-8.fc16.i686.rpm libXpm-3.5.10.tar.gz php-mbstring-5.4.1-1.fc17.i686.rpm webmin-1.590-1.noarch.rpm xpm-3.4k-2.i386.rpm xpm-3.4k.tar.gz ...
extundelete /dev/mapper/centos-home --inode 2 #还原全部文件 extundelete /dev/mapper/centos-home --restore-all #还原指定时间点后被删的文件 extundelete --restore-all --after "1397202000"/dev/mapper/...
pjproject-2.11.1.tar.gz是asterisk16版本安装所必须的包,可直接下载使用。
ora2pg-21.1.tar.bz2 ora2pg-21.1.tar.gz ora2pg.conf oracle-instantclient-basic-21.1.0.0.0-1.x86_64.rpm oracle-instantclient-devel-21.1.0.0.0-1.x86_64.rpm oracle-instantclient-jdbc-21.1.0.0.0-1....
.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 ...
本文介绍了linux下的压缩程式tar、gzip、gunzip、bzip2、bunzip2、compress、uncompress、zip、 unzip、rar、unrar等程式,及怎么使用...gz、.tgz、.bz2、.tar.bz2、.Z、.tar.Z、.zip、.rar这10种压缩文件进行操作...
arm-2014.05交叉编译器
寻找tar文件脚本,用于tar.bz2修复 https://blog.csdn.net/hushui/article/details/107963114