这一节的内容,我们详细介绍下Linux的文件压缩、解压缩与文件归档的内容,也就是tar、gzip、bzip2、xz等命令的内容;

压缩(compress)与解压缩(uncompress)

  Linux系统下常见的压缩格式有:gz,bz2,xz,zip,z

  文件压缩的原理:文本文件中经常出现的字符,通过一个特定的代码来代替,及压缩;例如:abcadffgabc 这一段字符串中出现 abc 两次,用 1 替代 abc,则变为 1adffg1 这样字符串就少了,这就是压缩的过程;解压缩,则是使用 abc 在将 1 这个内容替换回来,及解压缩;

  但是,每一种压缩软件的方式是不一样的,也就是压缩的算法不同,这样导致压缩后文件的比例(压缩比)也是不一样的;

  常见的压缩方式:gzip bzip2 xz

    gzip:后缀为 .gz 的文件,及通过gzip软件压缩的文件;1、gzip只能压缩文件,不能压缩目录;2、默认情况下,被压缩的文件压缩好以后,只留压缩 .gz 的压缩文件,删除原文件;

      用法:gzip /PATH/TO/SOMEFILE    #在当前目录下创建压缩文件

      -[1-9]  指定压缩比,默认的压缩比为6;

        这里可以通过 du -h 来查看文件前后的大小情况;

      -d  解压缩

        或者通过命令 gunzip;解压完后,同样会删除掉原来的压缩文件,只保留解压后的文件;

          用法:gunzip /PATH/TO/SOMFILE.gz

    zcat  临时查看压缩文件的内容,这里并没有将压缩文件解压出来;

      用法:zcat /PATH/TO/SOMEFILE.gz

    

    bzip2:压缩后的文件为 .bz2 结尾;比 gzip 有着更大的压缩比,但是最对小文件而言没有任何优势,甚至压缩出来的文件比 gzip 压缩的文件还要大;使用方式与 gzip 相似;

      用法:bzip2 /PATH/TO/SAMEFILE  #它也是只能压缩文件,不能压缩目录  

      -d  解压缩

        或者通过 bunzip2 解压缩;

          用法:bunzip2 /PATH/TO/SOMEFILE.bz2

      -[1-9]  指定默认的压缩比,默认为6

      -k  可以保存原来的文件,默认压缩、或者解压后,原来的文件都会被删除,-k 就可保留原来的文件;

    bzcat  同样是不解压文件可以显示压缩文件的内容

      用法:bzcat /PATH/TO/SOMEFILE.bz2

    xz:压缩后的文件为 .xz 后缀结尾;如果没有安装,则可以通过 yum install xz 来安装xz压缩工具;

      用法:xz /PATH/TO/SOMEFILE

      -d  解压文件

        或者通过 unxz 来进行文件解压;

      -[1-9]  指定压缩比,默认压缩比为6

      -k  保留源文件

    xzcat  则是不解压文件,查看压缩文件的内容;

文件归档

  归档和压缩时两件事,压缩时将同一个文件变的更小;而归档,则是将多个文件收纳在一起,不改变原有文件的大小,这个作用一般用来做数据备份;

  常用的归档工具有:zip(也可以进行文件压缩) tar cpio

  zip:zip及归档,同时它也可以作为压缩文件的工具;

    用法:zip FILENAME.zip FILE1 FILE2 FILE3 ...  #先指定一个文件名,然后可以同时对多个文件进行压缩与归档,这个文件可以对目录进行操作

    将后面多个文件压缩到一个文件中,这个功能我们叫做 archive 归档,归档本身并不意味着压缩;

  unzip  通过 zip 工具压缩的文件,进行解压;

  tar:文件归档,不对文件进行压缩(自身存储了很多的元数据),它是一个很好使用的备份工具;

    -c  创建归档文件

    -f FILE.tar  指定归档的文件【自己定义文件名,FILE.tar,建议以 .tar 结尾】

      例如:tar -cf test.tzr test*.txt

    -x  显示源文件

    --xattrs  在归档的同时,也保留文件的扩展属性信息(一般用来做文件备份)

    -t  不展开归档,直接查看归档那些文件,就好比 zcat bzcat xzcat 不解压文件,查看解压内容;

      例如:tar -tf test.tar

    -[z|j|J]cf  z表示通过 gzip 对文件进行压缩,j表示通过 bzip2 对文件进行压缩,同时 -J 表示使用 xz 对文件进行压缩,并进行归档

    -[z|j|J]xf  表示对 gzip/bzip2/xz 文件进行解压【解压文件可以不用指定解压软件,因为tar工具可以自己识别压缩工具】

    

  cpio:copy files to and from archives 复制一个文档,并归档;所以,这个工具也是进行归档工具,但是使用较少;

    这里我们可以看到:initramfs-2.6.32-431.el6.i686.img 是一个 gzip 的压缩文件,解压以后,我们就知道这是一个 cpio 归档后的文件;

    

    

16 Linux系统的文件压缩、解压与归档的更多相关文章

  1. Linux 之 文件压缩解压

    文件压缩解压 参考教程:[千峰教育] 命令: gzip: 作用:压缩文件,只能是单个文件,不能是多个,也不能是目录. 格式:gzip file 说明:执行命令会生成file.gz,删除原来的file ...

  2. Linux系统下文件压缩与打包命令

    Linux系统下文件压缩与打包命令 常用的压缩文件拓展名 * .Z * .zip * .gz * .bz2 * .xz * .tar * .tar.gz * .tar.bz2 * .tar.xz 压缩 ...

  3. linux驱动系列之文件压缩解压小节(转)

    转至网页:http://www.jb51.net/LINUXjishu/43356.html Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通 ...

  4. linux中tar及压缩解压命令用法

    把常用的tar解压命令总结下,当作备忘: tar 命令可以为Linux的文件和目录创建档案.利用 tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向 档案中加入新的文件.t ...

  5. Linux下的tar压缩解压命令

    tar  这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个. -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 下 ...

  6. Linux常用命令6 压缩解压命令

    .zip是Linux和Windows共有的压缩格式 1.压缩解压命令:gzip 命令英文原意:GNU zip   命令所在路径:/bin/gzip 执行权限:所有用户 语法: gzip [文件]   ...

  7. linux常用命令---打包压缩解压

    打包压缩解压

  8. Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接

    作业一:1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cat /etc/passwd /etc/group > /1.txt2) 将用户信息数据库文件和用户 ...

  9. linux文件压缩解压命令

    01-.tar格式解包:[*******]$ tar xvf FileName.tar打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩! ...

随机推荐

  1. 爱今天 APP 闪退怎么办?

    爱今天 APP 闪退怎么办? 爱今天是一款简洁优秀的时间记录 APP. 但也有一些小 Bug,可能是因为不同的手机兼容问题,在添加时间时会出现闪退现象. 可能是因为自己修改了添加时间的方式. 可以通过 ...

  2. Kafka 基本概念学习笔记

    一. 什么是Kafka 面向数据流的生产,转换,存储,消费的整体流处理平台 二.Kafka三大特性 1.发布和订阅数据的流,类似于消息队列,消息系统 2..数据流存储平台 3.当数据产生的时候,对数据 ...

  3. go thrift报错问题--WriteStructEnd

    问题 go thrift开发过程中,多个goroutine共用一个client时,报错: panic: runtime error: index out of range goroutine 24 [ ...

  4. app崩溃后自动重启

    android 引用:http://blog.csdn.net/caiwenfeng_for_23/article/details/41184353 package com.tan.abnormalr ...

  5. MAC上使用Enterprise Architecture,附带安装步骤及破解链接

    绪论 网上找了半天这个主题也没有详细的步骤的昂,所以自己来造轮子了. 还有,百度搜EA破解版不靠谱,大搜狗更给力哦! 一.背景 穷逼只有一台存储空间不大MACAir,分给虚拟机Virtual Box的 ...

  6. seo一些相关内容

    PR值算法原理总体上基于下面2个前提: 1.一个网页被多次引用,则它可能是很重要的: 一个网页虽然没有被多次引用,但是被重要的网页引用,则它也可能是很重要的:一个网页的重要性被平均的传递到它所引用的网 ...

  7. mongoDB oplog的说明及应用

    mongoDB oplog 说明 ts:8字节的时间戳,由4字节unix timestamp + 4字节自增计数表示.这个值很重要,在选举(如master宕机时)新primary时,会选择ts最大的那 ...

  8. C#对Mongodb数组对象操作

    Mongo对数据的存储非常随意,需要修改对象中的数组对象时,就会变得比较复杂. 类中的类对象可以直接通过“.”例如:Department.User.name 类中的对象User是数组时可以用Depar ...

  9. scroll家族属性

    上一篇主要分析了一下offset家族属性,本篇文章则主要是来分析一下scroll家族属性. 首先,scroll家族包括4个属性: 网页正文宽度:document.body.scrollWidth; 网 ...

  10. sudo 命令报错的解决方法

    尝试着用终端打开Mac的安全权限(sudo spctl --master-disable),却显示以下提示,望高手解答. sudo: /etc/sudoers is world writablesud ...