以下文章基于centos6.5

文章引自:http://www.jb51.net/LINUXjishu/105916.html

一、Linux下常见的压缩指令

  在linux的环境中,压缩文件的扩展名大部分是:[*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2],为什么会有这样的扩展名呢?不是说Linux下的扩展名没有用么?

  这是因为Linux支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件了。所以,当你下载到某个压缩文件时,自然就需要知道该档案是由哪种压缩指令压缩出来的,好用来对照着压缩啊!也就是说,虽然Linux档案的属性基本上是与文件名没有绝对关系的,但是为了帮助记忆,所以适当的扩展名还是有必要的。下面我们就列出几个常见的压缩文件档案扩展名吧。

  *.Z         compress程序压缩的档案;

  *.gz        gzip程序压缩的档案;

  *.bz2       bzip2程序压缩的档案;

  *.tar       tar程序打包的数据,但是没有被压缩过;

  *.tar.gz    tar程序打包的数据,并且经过gzip压缩过;

  *.tar.bz2   tar程序打包的数据,并且经过bzip2压缩过;

  Linxu上常见的的压缩的指令是gzip和bzip2,compress已经退出流行了。  

  这个 tar 可以将徆多档案『打包』成为一个档案!甚至是目录也可以这么玩。不过,单纯的tar 功能仅是『打包』而已,亦即是将很多档案集结成为一个档案, 事实上,他并没有提供压缩的功能,后来,GNU 计划中,将整个 tar与压缩的功能结合在一起,如此一来提供使用者更方便并且更强大的压缩与打包功能! 底下我们就来谈一谈这些在 Linux 底下基本的压缩指令吧!

  1.comprss

   已经退出流行了。

  2.gzip与zcat

  gzip 可以说是应用度最广的压缩指令了!目前 gzip 可以解开 compress, zip与gzip 等软件所压缩的档案。 至于 gzip所建立的压缩文件为 *.gz 的档案名喔!让我们来看看这个指令的用法吧:

  

  与 compress 类似的,当你使用 gzip 进行压缩时,在预设的状态下原本的档案会被压缩成为 .gz 的档名, 源文件就不再存在了。您也可以发现,由于 gzip 的压缩比要比 compress 好的多,所以当然建议使用 gzip 啦! 此外,使用 gzip 压缩的档案在 Windows 系统中,竟然可以被 WinRAR 这个软件解压缩呢!很好用吧!至于其他的用法如下:

  

  其他范例:

  1.Linux压缩保留源文件的方法: 
    gzip –c filename > filename.gz 
  2.Linux解压缩保留源文件的方法: 
    gzip –c filename.gz > filename

   其实 gzip 的压缩已经优化过了,所以虽然 gzip 提供 1~9 的压缩等级,不过使用默认的6 就非常好用了! 因此上述的范例四可以不要加入那个 -9 的选顷。范例四的重点在那个 -c 与 > 的使用啰!

  cat 可以读取纯文本档,那个 zcat 则可以读取纯文本档被压缩后的压缩文件! 由于gzip 这个压缩指令主要想要用来取代 compress 的,所以不但 compress 的压缩文件案可以使用 gzip 来解开,同时 zcat 这个指令可以同时读取 compress与gzip 的压缩文件呦!

  3.bzip2

  4.zip和unzip

  在终端中数据zip和unzip来检查当前linux中是否安装了zip和unzip程序,如下表明安装了zip和unzip:

  

  

  如果没有安装,使用以下命令安装:

  yum install zip;

  yum install unzip;

  解压缩文件范例:

  1、把/home目录下面的mydata目录压缩为mydata.zip
    zip -r mydata.zip mydata #压缩mydata目录
  2、把/home目录下面的mydata.zip解压到mydatabak目录里面
    unzip mydata.zip -d mydatabak
  3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
    zip -r abc123.zip abc 123.txt
  4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
    unzip wwwroot.zip
  5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
    unzip abc\*.zip
  6、查看把/home目录下面的wwwroot.zip里面的内容
    unzip -v wwwroot.zip
  7、验证/home目录下面的wwwroot.zip是否完整
    unzip -t wwwroot.zip
  8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
    unzip -j wwwroot.zip

  主要参数

    -c:将解压缩的结果
    -l:显示压缩文件内所包含的文件
    -p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
    -t:检查压缩文件是否正确
    -u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
    -v:执行是时显示详细的信息
    -z:仅显示压缩文件的备注文字
    -a:对文本文件进行必要的字符转换
    -b:不要对文本文件进行字符转换
    -C:压缩文件中的文件名称区分大小写
    -j:不处理压缩文件中原有的目录路径
    -L:将压缩文件中的全部文件名改为小写
    -M:将输出结果送到more程序处理
    -n:解压缩时不要覆盖原有的文件
    -o:不必先询问用户,unzip执行后覆盖原有文件
    -P:使用zip的密码选项
    -q:执行时不显示任何信息
    -s:将文件名中的空白字符转换为底线字符
    -V:保留VMS的文件版本信息
    -X:解压缩时同时回存文件原来的UID/GID

  5.tar

Linux系统档案与文件系统的压缩与打包的更多相关文章

  1. linux备忘录-档案与文件系统的压缩与打包

    知识点 文件扩展名与压缩解压缩工具 .Z -> compress程序压缩的档案 .gz -> gzip程序压缩的档案 .bz2 -> bzip2程序压缩的档案 .tar -> ...

  2. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 四 档案的文件系统的压缩和打包

    1.压缩文件案的用途与技术     a.用途,简单来说,就是节约磁盘空间.如果从传输角度讲,占用宽带也会小很多(Apache就有自动压缩的功能,节省宽带资源,提升网站的输出能力)     b.压缩技术 ...

  3. linux——(5)文件与文件系统的压缩与打包

    概念一:常见的压缩文件拓展名 .z compress程序压缩的文件. .gz gzip程序压缩的文件. .bz2 bzip2程序压缩的文件. .tar tar程序打包的数据,并没有压缩过. .tar. ...

  4. 鸟哥的linux私房菜之档案与文件系统的压缩与打包

    00000001 节约空间 其实简单的说压缩就是把没有用到的0给去掉,解压的时候在加上 在linux中,压缩文件档案的扩展名大多是.tar,.tar.gz,tgz,gz,.Z,.bz2 compres ...

  5. Linux档案与文件系统的压缩与打包

    总结: 压缩指令为透过一些运算方法去将原本的档案进行压缩,以减少档案所占用的磁盘容量.压缩前与压缩后的档案所占用的磁盘容量比值,就可以被称为是“压缩比” 压缩的好处是可以减少磁盘容量的浪费,在www网 ...

  6. Linux学习笔记—文件与文件系统的压缩与打包(转载)

    压缩文件的用途与技术 例如,计算机都是以byte单位来计量的,1byte占8bit.如果存储数字1,那么1byte就会空出7bit.采用一定的计算方式,压缩这些空间可以大大降低文件存储. Linux系 ...

  7. Linux学习笔记之文件与文件系统的压缩与打包

    四.文件与文件系统的压缩与打包 用途: 传输时减少带宽 Linux系统常见的压缩命令 Compass(旧版压缩,并且在centOS中默认为不安装) gzip, zcat bzip2, bzcat zi ...

  8. Linux中文件/文件系统的压缩、打包和备份总结(基于rhel7)

    文件/文件系统的压缩.打包 Linux有哪些压缩工具可供选择 按压缩比:xz>bzip2>gzip,按压缩时长:gzip>bzip2>xz,另外还有zip可以选择. gzip只 ...

  9. Linux系统NFS网络文件系统

    Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...

随机推荐

  1. C++—动态内存管理之深入探究new和delete

    C++中程序存储空间除栈空间和静态区外,每个程序还拥有一个内存池,这部分内存被称为自由空间(free store)或堆(heap).程序用堆来存储动态分配的对象,即,那些程序运行时分配的对象.动态对象 ...

  2. Swing入门

    厌倦了在控制台使用键盘输入并显示结果的过程?是的,在你现在这台电脑上,已经很少有程序使用这种交互方式.本实验将带你初步进入图形用户界面(GUI)的世界,让你学会如何编写屏幕上那些具有特定大小和位置的窗 ...

  3. vue监听滚动事件,实现滚动监听

    在vue中实现滚动监听和原生js无太大差异,下面是一个简单的demo,可在控制台查看结果 <!DOCTYPE html> <html lang="en"> ...

  4. centos5.11架设svn(svn系列 架设服务器 知识一总结)

    ♣svn是什么? ♣安装    --yum安装    --创建svn版本库目录    --创建版本库    --进入conf目录进行配置(该svn版本库配置文件)    --启动svn版本库    - ...

  5. Zookeeper的安装和初步使用

    1. Zookeeper集群角色 Zookeeper集群的角色:  Leader 和  follower  (Observer) zk集群最好配成奇数个节点 只要集群中有半数以上节点存活,集群就能提供 ...

  6. 使用VS2015将解决方案同步更新到Github上

    如今开源已经是一种趋势与潮流了,今天就来谈一谈如何将利用VS将我们的解决方案同步更新到Github上. 第一步:登录自己的Github账号(没有的自行注册). 我的Github登录后的界面: 第二步: ...

  7. Activity间传递数据

     1.从当前的Activity传递数据到下一个Activity: (1)发送方(当前的Activity): Bundle bundle = new Bundle(); bundle.putString ...

  8. Sphinx安装流程及配合PHP使用经验

    1.什么是Sphinx Sphinx是俄罗斯人Andrew Aksyonoff开发的高性能全文搜索软件包,在GPL与商业协议双许可协议下发行. 全文检索式指以文档的全部文本信息作为检索对象的一种信息检 ...

  9. 常用SQL_官方文档使用

    SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库. 5大主要类型: ①DQL(Data Query Language,数据查询语言)语句,主要由于se ...

  10. MongoDB基础教程系列--第七篇 MongoDB 聚合管道

    在讲解聚合管道(Aggregation Pipeline)之前,我们先介绍一下 MongoDB 的聚合功能,聚合操作主要用于对数据的批量处理,往往将记录按条件分组以后,然后再进行一系列操作,例如,求最 ...