漫谈压缩格式:zip、tar、bz2、tar.gz... 您所在的位置:网站首页 夸克压缩包格式暂不支持gz 漫谈压缩格式:zip、tar、bz2、tar.gz...

漫谈压缩格式:zip、tar、bz2、tar.gz...

2024-01-12 05:18| 来源: 网络整理| 查看: 265

【Linux】漫谈压缩格式:zip、tar、bz2、tar.gz... 前言为什么要有压缩文件什么是压缩文件常见压缩格式介绍Linux常用压缩命令tar命令实例对于.zip 小结

前言

下载开源软件的时候,下载站经常会提供多种格式的下载文件如zip、tar.gz等。如果用于Linux操作系统,我们一般会下意识地选择tar.gz结尾的文件而对于Windows环境我常选择zip格式,一直以来就是这么用的,也没有深入了解过,最近简单总结了一下。

对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕。别个不说,单单就压缩文件为例,我们知道在Windows下最常见 的压缩文件就只有两种,一是,zip,另一个是.rap。可是Linux就不同了,它有.gz、.tar.gz、tgz、bz2、.Z、.tar等众多的 压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了。本文就来对这些 常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被搞晕。

为什么要有压缩文件

文件对于操作系用的重要性不言而喻,Unix更是基于文件管理的系统,深入理解文件系统不是本文的重点,我们来想一下普通用户都会用到的场景,假设你需要往U盘里拷贝100个Excel文件,我们当然可以Ctrl+A全选、Ctrl+C复制最后到U盘中Ctrl+V粘贴,一顿操作猛如虎。

但若想把这100个文件通过QQ发送给你的朋友,你若图省事儿一股脑全拖到聊天窗口发送给你的朋友,估计网线那头的朋友会抓狂——他需要一个个的接收、另存… …

那么问题来了,有没有一种简单有效的方法来进行文件传输?

答案是肯定的,那就是:打包它!划重点:注意不是压缩!

什么是压缩文件

在具体总结各类压缩文件之前呢,首先要弄清两个概念:打包和压缩。为什么要区分这两个概念呢?其实这源于Linux中的很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你就得先借助另它的工具将这一大堆文件先打成一个包,然后再就原来的压缩程序进行压缩。

打包 打包是指将一大堆文件或目录什么的变成一个总的文件。tar、zip都有打包功能。不改变文件大小,就是打个包,变成一个文件的文件夹,解压速率也很快。压缩 压缩是将一个大的文件通过一些压缩算法变成一个小文件,顾名思义,通常说的rar、tar等这些大多都是格式,而不是算法。

多数人电脑上装有是好压、360压缩、WinRAR、7z、BandZip等解压软件,它们也能兼容市面上的多数格式,Windows上用起来是足够了。

常见压缩格式介绍 rar tar zip 7z是归档容器,里面可以放多个文件、有目录结构,其中zip是不识别文件名的编码,rar是带单独的压缩算法(据说类 Deflate)tar本身是一个文件打包备份的工具,没有自身的压缩功能。通常的使用方式为打包后再调用其他压缩库进行文件压缩。比较适合Linux系统,保持文件权限状态、软硬链接能力强。zip是公开的一种压缩算法,压缩比目前相对不太高。gz,gzip是GNU组织开发的一个压缩程序,.gz结尾的文件就是gzip压缩的结果。与gzip相对的解压程序是gunzip。tar中使用-z这个参数来调用gzip。rar是带专利的商业算法,压缩比目前比较高。bz2是Linux下常见的压缩文件格式,是由具有高压缩率的压缩工具bzip2生成,以后缀为.bz2结尾的压缩文件。tar中使用-j这个参数来调用bzip2。Z,compress也是一个压缩程序,但是好象使用compress的人不如gzip和bzip2的人多。.Z结尾的文件就是bzip2压缩的结果。与 compress相对的解压程序是uncompress。tar中使用-Z这个参数来调用compress。 Linux常用压缩命令 tar命令

Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法。

必须的参数:(不能共存)

-c,创建压缩文件c代表create。-x,解压缩文件-t,查看压缩包里面的文件!-r,向压缩归档文件末尾追加文件-u,更新原压缩包中的文件

辅助参数:(可用一个或多个)

-z,用gzip压缩/解压缩-j,用bzip2压缩/解压缩-v,显示压缩/解压缩的进度条-f,使用档案文件或设备,这个选项通常是必选的(注意:f后面不要接参数,也就是说-zxfv是不对的,要写成-zxvf)-O,将文件解开到标准输出

小结:

*.tar 用tar –xvf解压*.gz 用gzip -d或者gunzip解压*.tar.gz和*.tgz 用tar –xzf解压*.bz2 用bzip2 -d或者用bunzip2解压*.tar.bz2用tar –xjf解压*.Z 用uncompress解压*.tar.Z 用tar –xZf解压*.rar 用unrar e解压*.zip 用unzip解压 实例

解压一个文件:

$ tar -zxvf abc.tar.bz2 [-C --path] # -C可选解压到的路径如下命令将解压到/user/local/a文件夹下 $ tar -zxvf abc.tar.gz -C /user/local/a

创建压缩文件:

$ tar -zcvf abc.tar.bz2 one.mp3 two.mp3 对于.zip

Linux下提供了zip和unzip程序,zip是压缩程序,unzip是解压程序。它们的参数选项很多,这里只做简单介绍。

将所有.jpg的文件压缩成一个zip包

$ zip all.zip *.jpg

将all.zip中的所有文件解压出来

$ unzip all.zip [-d --path] # -d可选,作用同tar的-C 小结

到此为至,我们已经介绍过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种压缩文件进行解压了,以后应该不需要为下载了一个软件而不知道如何在Linux下解开而烦恼了。而且以上方 法对于Unix也基本有效。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有