linux基础之压缩、解压缩和归档工具

1、压缩工具

基本介绍

  为了减少文件的原来的文件大小而过多的浪费磁盘的存储空间,我们使用压缩后多文件进行存储

压缩工具的介绍

  compress:把文件压缩成以.z结尾的压缩文件

  uncompress:将以.z压缩文件解压缩为普通文件

  gzip:将文件压缩成以.gz结尾的压缩文件

  gunzip:将以.gz结尾的压缩文件解压缩为普通文件

  bzip2:将文件压缩成以.bz2结尾的压缩文件

  bunzip2:将以.bz2结尾的压缩文件解压缩为普通文件

  xz:将文件压缩成以.xz结尾的压缩文件

  unxz:将以.xz结尾的压缩文件解压缩为普通文件

  zip:将文件压缩成以.zip结尾的压缩文件

  unzip:将以.zip结尾的压缩文件解压缩为普通文件

  tar:将文件归档成以.tar结尾的单文件

  cpio:拷贝文件和归档文件

gzip/gunzip类型压缩或解压缩工具

  基本介绍

    gzip使用的是Lemoel-Ziv  LZ777算法实现,这个算法的压缩不是很好。这个文件主要是用来压缩文本文件,如果已经做过二进制编码,那么压缩的意义不大。如果是文本文件被压缩了,我们想看它的内容怎么办?第一个办法先解压缩,在查看。第二个办法使用zcat命令查看

  基本语法

    gzip [ -acdfhlLnNrtvV19 ] [-S suffix] [ name ...  ]

    gunzip [ -acfhlLnNrtvV ] [-S suffix] [ name ...  ]

  常用选项

    -d:gzip  -d表示的就是gunzip命令,表示解压缩

    -r:表示递归压缩每个子目录下的文件

    -v:压缩详细

    -num:表示压缩比,num表示压缩比,范围是[1-9],数字越高,压缩比越大,压缩后的内容越小,压缩的速度越慢

    -c:将解压缩或者压缩结果输出至标准输出,如果压缩以后想保留原文件可以使用这种方式

  使用案例

    gzip  -c  ./a.txt  > b.gz

  使用注意

    gzip压缩工具进行压缩后,默认会删除源文件,压缩完为了节约空间,只保留压缩后的文件。gunzip解压也是一样,解压缩之后保留解压缩的文件,而删除压缩的文件

zcat查看压缩后的文本工具

  基本介绍

    不显示展开压缩文件的前提下查看文本文件内容。

  底层原理

    这个工具底层自动调用gzip  -d或者gunzip命令解压文件至临时文件中,并使用zcat工具查看文件内容

  基本语法

  zcat [ -fhLV ] [ name ...  ]

bzip2/bunzip2/bzcat压缩或者解压缩工具

  基本介绍

    bzip2使用的是LZ77/LZ78-based算法实现,能实现更高压缩比

  基本语法

    bzip2 [ -cdfkqstvzVL123456789 ] [ filenames ...  ]

   bunzip2 [ -fkvsVL ] [ filenames ...  ]

  bzcat [ -s ] [ filenames ...  ]

  bzip2recover filename

  常用选项

    -k:保留压缩后的原文件

    -d:执行解压缩,也就是不用使用bunzip2来解压,bzip2  -d也表示解压

    -q:静默输出

    -v:详细输出压缩过程

    -num:表示压缩比,num表示压缩比,范围是[1-9],数字越高,压缩比越大,压缩后的内容越小,压缩的速度越慢

  使用注意

    bzip2压缩工具进行压缩后,默认会删除源文件,压缩完为了节约空间,只保留压缩后的文件。bunzip2解压也是一样,解压缩之后保留解压缩的文件,而删除压缩的文件

bcat查看压缩后的文本工具

  基本介绍

    不显示展开压缩文件的前提下查看文本文件内容。

  底层原理

    这个工具底层自动调用bzip2  -d或者bunzip2命令解压文件至临时文件中,并使用bcat工具查看文件内容

  基本语法

    bcat [ -fhLV ] [ name ...  ]

xz/unxz/xzcat/lzcat/lzma/unlzma压缩或者解压缩工具

  基本介绍

    在进行压缩时使用的是lzma压缩算法,这是一个通用的数据压缩工具,压缩后的文件是以.xz结尾

  基本语法

    xz [option]...  [file]...

  unxz is equivalent to xz --decompress.

  xzcat is equivalent to xz --decompress --stdout.

  lzma is equivalent to xz --format=lzma.

  unlzma is equivalent to xz --format=lzma  --decom-press.

  lzcat  is  equivalent to xz --format=lzma --decom- press --stdout.

  使用注意

    xz压缩工具是一个主流的压缩工具,他是众多开源作者在源程序包中提供的压缩工具。xz压缩工具是没办法对目录进行压缩的,要想对目录进行压缩,xz压缩工具只能对单个文件进行压缩,要想对目录进行压缩,需要将目录打包成单个文件,在对其压缩 。而打包就是归档

zip打包或归档和压缩工具

  基本介绍

    zip是众多操作系统都支持的压缩或者打包工具。这个是系统原生支持的压缩工具

  基本语法

    zip  [options....]  压缩后的文件名.zip   要压缩的众多文件

unzip解压缩和展开文件

  基本介绍

    将zip压缩工具压缩后进行解压缩并且将归档文件展开的工具

  基本语法

    unzip   压缩和归档文件.zip

tar压缩和打包或归档工具

  基本介绍

    打包或者归档和压缩和解压缩工具,这个工具的解压和压缩是调用其他压缩和级压缩工具,比如gzip、xz、

  基本语法

    tar  [OPTION...]  打包或者压缩文件.tar   [FILE]...

  常用选项

    c:创建归档

    -x:展开归档

    -t:列出归档文件的文件列表

    --delete:从归档文件中删除文件

    -f  path:指明归档文件路径

    -j:调用bzip2压缩工具

    -z:调用gzip压缩工具

    -v:显示详细过程

    -p:保留权限信息

    -J:调用xz压缩工具

    -C  DIR:将展开文件保存至指定目录下DIR,而不是保存在默认目录下,及当前目录

  使用案例

    将当前目录下的归档文件为student.tar,展开到/tmp/studengt目录下

      tar  -x  -f  ./student.tar   -C  /tmp/student

  使用注意

  归档后的文件不会减少文件大小,反而会增大归档后的文件的大小,因为是多个文件合并到一起。归档本身不是压缩

  tar命令在解压展开一个压缩归档文件时,可以不同带压缩的选项,tar命令会根据相应的压缩判断该使用的解压工具

linux压缩、解压缩和归档工具的更多相关文章

  1. Linux文件压缩、解压缩及归档工具一

    主题Linux文件压缩.解压缩及归档工具 压缩工具很重要的,因为要经常到互联网下载包 一compress/uncompress compress [-dfvcVr] [-b maxbits] [fil ...

  2. linux 压缩解压打包工具大集合

    压缩.解压缩及归档工具有很多,今天小编就整理几个大家较为常用的. compress gzip  bzip2 xz zip tar cpio 一.压缩.解压工具 用法 压缩 工具 压缩后 压缩包格式 解 ...

  3. linux 压缩、解压缩及归档工具

    linux下主要的压缩.归档工具 compress/uncompress: .Z gzip/gunzip:  .gz bzip2/bunzip2: .bz2 xz/unxz: .xz zip/unzi ...

  4. linux压缩(解压缩)命令详解

    一.tar命令          tar可以为文件和目录创建档案.利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar 最初被用来在磁带上创 ...

  5. Linux压缩解压缩(unzip,tar)

    unzip tar 常用解压缩命令: tar -zxvpf:解压缩 tar -zcvpf: 压缩 # tar [-j|-z] [cv] [-f 建立的檔名] filename... <==打包与 ...

  6. Linux压缩解压缩命令学习笔记

    Linux中主要的压缩文件有:*.gz   *.tar  *.tar.gz  *.zip  *.bz2  *.tar.bz2 .zip这种古老的压缩格式,在window和Linux中都不需要安装软件可 ...

  7. linux压缩解压缩

    一.tar • -c:创建新文档• -x:解压缩归档文件• -f 文件名:使用归档文件• -j:使用bzip2解压缩• -z:使用gzip解压缩• -v:详细输出模式 1.压缩命令: 命令格式:tar ...

  8. Linux 压缩解压缩

    先直接给出各种解压缩命令 .tar 压缩:tar cvf FileName.tar FileName 解压:tar xvf FileName.tar ------------------------- ...

  9. Linux 压缩解压缩命令详解

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

随机推荐

  1. 数据结构~Sqlserver索引使用的B树

    B树相关概念 在B-树中查找给定关键字的方法是,首先把根结点取来,在根结点所包含的关键字K1,…,Kn查找给定的关键字(可用顺序查找或二分查找法),若找到等于给定值的关键字,则查找成功:否则,一定可以 ...

  2. Java实现post和get请求

    GET请求:GET请求会向服务器发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行 ...

  3. 数组的常用方法concat,join,slice和splice的区别,map,foreach,reduce

    1.concat()和join() concat()是连对两个或两个数组的方法,直接可以将数组以参数的形式放入 join()是将数组中的所有元素放入一个字符串中,通俗点讲就是可以将数组转换成字符串 2 ...

  4. 代码规范mark一下

    转自于:https://github.com/zh-google-styleguide/zh-google-styleguide/blob/master/google-python-styleguid ...

  5. iOS 判断一个类是否存在,NSStringFromClass 不用 import 就可以获取类

    Class myCls = NSClassFromString(@"Person"); NSString *str = NSStringFromClass(myCls); if ( ...

  6. xpath简单实用

    一.xpath 基本语法 /html /html/head/title 绝对路径(一层层的查找) /html//title 相对于当前节点 //title/./../.. . 当前节点 ..父节点 . ...

  7. linux安装mysql(shell一键安装)

    1. 相关文件(install_mysql.sh.my.cnf.mysqld相关内容在文中最后面) 2. 将上面的文件上传到linux服务器某一目录下 3.给install_mysql.sh赋执行权限 ...

  8. 对弈的C++学习笔记

    2018-07-11上传   一:从C到C++ 1.C++新类型 bool 判断真假 占用一个字节      if(条件) 真1或者假 0     bool 类型的取值 true false      ...

  9. Quartz 2.2 动态添加、修改和删除定时任务

    QuartzManager.Java 动态添加.修改和删除定时任务管理类 import org.quartz.CronScheduleBuilder; import org.quartz.CronTr ...

  10. [linux-脚本]shebang(shabang #!)

    使用Linux或者unix系统的人们对#!这个符号都不陌生,但要说出个具体的所以然来,很多人估计还真不行,我们有必要就此整理一下.Shebang这个符号通常在Unix系统的脚本中第一行开头中写到,它指 ...