`
wangshaofei
  • 浏览: 282271 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

如何解压缩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的功能解释时,我做了修改。

分享到:
评论

相关推荐

    Linux下创建与解压zip, tar, tar.gz和tar.bz2

    使用 Bzip2 算法创建一个名为 `archive_name.tar.bz2` 的压缩文件。 - **解压 Tar.Bz2 文件:** ```bash tar -jxvf archive_name.tar.bz2 ``` 解压 `archive_name.tar.bz2` 文件到当前目录。 - **解压到指定...

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

    在Linux系统中,掌握如何创建与解压zip、tar、tar.gz和tar.bz2文件是一项基本但极其重要的技能。这不仅能够帮助用户有效地管理文件,还能优化存储空间和网络传输效率。以下是对这些常用压缩格式及其操作命令的详细...

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

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

    linux下 tar解压 gz解压 bz2等各种解压文件使用方法

    Linux 下 tar 解压 gz 解压...本文详细介绍了 Linux 下 tar 解压 gz 解压 bz2 等各种解压文件使用方法,包括 tar、gz、bz2、zip、rar、lha 等多种格式的文件。了解这些命令可以帮助您更好地管理和使用 Linux 操作系统。

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

    这里提供的四个压缩包文件,Python-2.6.6.tar.bz2、zeromq-3.2.5.tar.gz、jzmq.tar.gz以及storm-0.8.0.zip,都是与Storm搭建和运行相关的资源。 首先,我们来详细了解一下每个文件的作用: 1. **Python-2.6.6.tar....

    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后,并且将...

    Linux下常用压缩格式的压缩与解压方法.doc

    - 压缩:同样,`.tar.bz`的压缩方法未提供,可以尝试`bzip2 -z FileName.tar`来创建`.tar.bz2`文件。 5. **.Z**: - 解压:`uncompress FileName.Z` - 压缩:`compress FileName.tar` 生成FileName.tar.Z 6. **...

    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.zip”提及了几个关键组件,它们分别是GCC(GNU Compiler Collection)4.8.2、GMP(GNU Multiple Precision Arithmetic Library)6.1.2、MPFR...

    Linux下tar bz gz等压缩包的压缩和解压

    Linux下常见的压缩文件格式有tar、gz、bz2、zip、rar、lha等,本文将详细介绍这些压缩文件的压缩和解压方法。 tar tar是Linux中最基本的压缩格式,用于将多个文件打包成一个文件。但是,tar本身不进行压缩,需要与...

    linux下_tar解压_gz解压_bz2等各种解压文件使用方法

    ### Linux 下 tar、gz、bz2 等各种压缩文件的解压方法 在 Linux 系统中,处理各种格式的压缩文件是一项常见的任务。本文将详细介绍如何在 Linux 环境下使用 tar、gzip (gz)、bzip2 (bz2) 等工具来压缩和解压缩文件...

    linux-tar解压_gz解压_bz2等各种解压文件使用方法.txt

    ### Linux-Tar 解压 gz、bz2 等各种压缩文件使用方法 #### 标题与描述中的知识点 本文档将详细介绍如何在 Linux 系统中使用 `tar` 命令来处理不同类型的压缩文件,包括 `.gz`、`.bz2`、`.tar.gz`(或 `.tgz`)、`....

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

    CentOS下tar解压 gz解压 bz2等各种解压文件使用方法

    对于其他格式如 `.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` 等: **解压:** ``` sExx FileName.* ``` **压缩:** ...

    find_tar_headers.zip

    tar.bz2文件是tar文件经过bzip2压缩后的结果,bzip2提供了比gzip更高的压缩率,但同时也可能带来更复杂的修复过程。在修复损坏的tar.bz2文件时,通常需要先将其解压缩为tar文件,然后利用像"find_tar_headers.pl...

    linux常见压缩文件解压命令

    - `tar jcvf FileName.tar.bz2 DirName`:将DirName目录下的所有文件打包并用bzip2压缩为.tar.bz2文件。 - `tar Zcvf FileName.tar.Z DirName`:将DirName目录下的所有文件打包并用compress压缩为.tar.Z文件。 - ...

    jdk-17.0.2_macos-x64_bin.tar.gz.zip

    标题中的"jdk-17.0.2_macos-x64_bin.tar.gz.zip"是一个针对Mac OS X 64位系统的Java Development Kit (JDK)的压缩文件,版本为17.0.2。这个文件可能包含了一系列用于开发和运行Java应用程序的组件,包括Java编译器、...

    pjproject-2.11.1.tar.gz

    pjproject-2.11.1.tar.gz是 Asterisk 16 版本安装过程中不可或缺的一个组件,它为开源的VoIP通信平台 Asterisk 提供了核心功能支持。在深入了解pjproject之前,我们先来认识一下Asterisk。 Asterisk是一款强大且...

    linux 各种包解压命令大全

    其他压缩包的解压命令还有很多,如 .tar .tgz .tar.gz .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 等。 gzip 命令...

    Linux下文件的各种打包与压缩文件后缀及其解包解压缩方法

    对于其他常见的压缩文件类型,如`.gz`、`.bz2`、`.Z`等,可以直接使用对应的解压缩命令: - `.gz`:`gzip -d all.gz` 或 `gunzip all.gz`。 - `.bz2`:`bzip2 -d all.bz2` 或 `bunzip2 all.bz2`。 - `.Z`:`compress...

    arm-2014.05.tar.bz2.zip

    文件名中的".tar.bz2"表明这是一个使用bzip2压缩算法打包的tar归档文件,而".zip"则意味着这个tar文件又被进一步压缩成了ZIP格式,以便于在网络上传输和存储。 交叉编译器的核心组成部分通常包括预处理器、编译器、...

Global site tag (gtag.js) - Google Analytics