`

如何在Linux下创建与解压zip, tar, tar.gz和tar.bz2文件

阅读更多

      这么多年来,数据压缩对我们来说是非常有用的。无论是在邮件中发送的图片用的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的功能解释时,我做了修改。

 

 

 

摘自:http://jiangzhenghua.iteye.com/blog/392674

分享到:
评论

相关推荐

    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

    jdk-8u181-linux-i586.tar.gz 64位

    tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2 tar –cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将...

    python 实现zip.gzip.tar.gz.bz2压缩解压缩功能

    python实现 压缩解压缩各种文件,如zip,gzip,tar.gz,.bz2.

    php-linux-3.0-5.6.zip

    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下文件的各种打包与压缩文件后缀及其解包解压缩方法

    简要的介绍了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种压缩...

    gcc4.8.2gmp-6.1.2.tar.xzmpfr-3.1.5.tar.gzmpc-1.0.3.tar.gz.zip

    gcc4.8.2gmp-6.1.2.tar.xzmpfr-3.1.5.tar.gzmpc-1.0.3.tar.gz

    linux tar命令详解

    可是Linux就不同了,他有.gz、.tar.gz、tgz、bz2、.Z、.tar等众多的压缩文件名,此外windows下的.zip和.rar也能在Linux下使用,不过在Linux使用.zip和.rar的人就太少了。本文就来对这些常见的压缩文件进行一番小结,...

    linux常用解压方式

    3、*.tar.gz和*.tgz 用 tar –xzf 解压 4、*.bz2 用 bzip2 -d或者用bunzip2 解压 5、*.tar.bz2用tar –xjf 解压 6、*.Z 用 uncompress 解压 7、*.tar.Z 用tar –xZf 解压 8、*.rar 用 unrar e解压 9、*.zip 用 unzip...

    linux下ffmpeg安装包

    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 ...

    zeromq-3.2.5.tar.gz、jzmq.tar.gz、Python-2.6.6.tar.bz2、storm-0.8.0.zip下载

    storm搭建所需资源

    Linux解压指令

    .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操作系统下+php5.x+apache2.x运行环境配置所需软件.zip

    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 ...

    postgresql dba学习与工作 软件合集

    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....

    linux libpng-1.2.25.tar.gz

    Libpng comes in several distribution formats....libpng-*.tar.lzma, or libpng-*.tar.bz2 if you want UNIX-style line endings in the text files, or lpng*.7z lpng*.zip if you want DOS-style line endings.

    ffmpeg 安装 依赖包

    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...

    php-7.1.29.tar.gz.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-...

    linux压缩解压命令

    linux中压缩解压明天全,有例子说明(.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 )

    find_tar_headers.zip

    寻找tar文件脚本,用于tar.bz2修复 https://blog.csdn.net/hushui/article/details/107963114

    extundelete-0.2.4.tar.bz2使用教程(含压缩文件).zip

    extundelete /dev/mapper/centos-home --inode 2 #还原全部文件 extundelete /dev/mapper/centos-home --restore-all #还原指定时间点后被删的文件 extundelete --restore-all --after "1397202000"/dev/mapper/...

Global site tag (gtag.js) - Google Analytics