linux 下的文件压缩与解压

文件压缩

压缩原理:把文件的二进制代码压缩,把相邻的0,1代码减少,比如有000000,可以把它变成6个0 的写法60,来减少该文件的空间。

目的:时间换空间,cpu时间–>空间

压缩文件工具:

   compress|uncompress 压缩后的文件.z

   gzip|gunzip  压缩后的文件 .gz

   bzip|bunzip  压缩后的文件.bz2

   xz|unxz    压缩的文件.xz 

    

    gzip [option]  File
        -d :解压缩
        -数字:指定压缩比,默认数字为6,数字越大压缩比越大,更耗CPU资源
        -c:将压缩结果输出至标准输出
       gzip -c file > file.gz
       gzip 文件名:压缩文件,生成压缩文件,并删除原文件
            gunzip 压缩文件:解压缩文件,并将压缩文件删除
            zcat 压缩文件:查看gzip压缩文件,将压缩文件生成临时解压文件,并将临时文件显示

gzip动手操作

    gzip fiel :直接将file文件压缩,取名为file.zp,并将filey原文件删除

    8.png

     -c:选项

    9.png

bzip [option] file
    
    -d :解压缩
     -数字:指定压缩比,默认数字为6,数字越大压缩比越大,最大到9,更耗CPU资源
    -k:压缩并保留源文件
bzcat :查看bz2压缩文件
xz |unxz 
    -d:解压缩
     -数字:指定压缩比,默认数字为6,数字越大压缩比越大,最大到9,更耗CPU资源  
    -k:压缩并保留源文件
xzcat:不解压直接查看xz压缩文集
小结:以上三种只适合文件的压缩,压缩比例依次递增

归档工具

tar |cpio

    tar [option] 归档文件,tar工具打包回丢失acl属性

       -v:详细查看解压和归档信息

       -cf:创建归档文件 tar -cf /path/file.tar /path/

       -f:指定文件路径

       展开归档

        -x:默认展开当前路径

        -C:指定展开路径

        

       -t:不展开归档预览里面文件

       -X |–exclude-from file 打包时,不打包file文件中包含的文件或目录列表

       -exclude: -exclude=file1 打包时排除file1文件

    归档完成后需要压缩,利用tar结合之前的压缩工具

        -z:自动调用gzip2 压缩工具

        -j:自动调用bzip2 压缩工具

        -J:自动调用xz压缩工具

结合三种压缩工具压缩打包/root/bin目录

    10.png

    9.png

    11.png

zip:压缩归档工具 后缀名.zip 

    创建压缩:zip 文件名.zip 要压缩文件

    解压缩文件:unzip

    

cpio

    

    cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“ . cpio”或者“ .tar”结尾的文件。
    cpio [选项] > 文件名或者设备名
    cpio [选项] < 文件名或者设备名
        选项
        – o打包
        – i 解包,将打包文件解压或将设备上的备份还原到系统
        – t 预览,查看文件内容或者输出到设备上的文件内容
        – v 显示打包过程中的文件名称。
        – d 解包生成目录,在cpio还原时,自动的建立目录

        – c 一种较新的存储方式

原创文章,作者:wangnannan,如若转载,请注明出处:http://www.178linux.com/37962

(0)
wangnannanwangnannan
上一篇 2016-08-21
下一篇 2016-08-21

相关推荐

  • linux下zip包的压缩与解压

    linux zip 命令详解  功能说明:压缩文件。  语 法:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t <日期时间>][-<压缩效率>][压缩文件][文件…][-i <范本样式&gt…

    Linux干货 2017-04-10
  • linux用户组和权限管理

    用户组和权限管理  概念 用户分为三类: 1、超级用户:root uid=0,简单来说uid为0的用户就是超级用户。 2、虚拟用户:存在linux中,满足文件或者程序运行的需要,而创建的。不能登录,不能使用。uid=1-499,1-999(centos7) 3、普通用户:管理员root创建的用户。uid=500+,1000+(centos7) 用户…

    Linux干货 2017-07-29
  • 马哥教育网络班22期+第十一周课程练习

    1、详细描述一次加密通讯的过程,结合图示最佳。第一阶段:ClientHello:    客户端(通常是浏览器)先向服务器发出加密通信的请求,这被叫做ClientHello请求。客户端向服务器提供以下信息:        支持的协议版本,比如TLS 1.2 &n…

    Linux干货 2016-12-27
  • 如何实现本地yum源的共享

    上一篇关于Linux yum客户端的配置的博客,介绍了如何通过修改本机yum配置文件来访问网络或者本地的yun sever, 本文就来介绍一下,如何把我们的本地RPM包像yum sever一样通过http或ftp网络方式共享出去。 一、准备好发行版光盘,包,元数据    CentOS-6.8-x86_64-bin-DVD1.iso二、准备…

    2017-06-17
  • 文件管理

    一、文件系统     单根架构,根文件系统rootfs     不是linux大小写敏感,而是文件系统支不支持大小写。     路径分割 /     FHS:目录结构,文件分层标准  &nb…

    Linux干货 2016-08-02
  • # Linux运维入门初步—–第二周

    标签(空格分隔): Linux入门 linux 运维 — 写作:N27_李伟 2017-7-13一、 Linux上常用的文件管理命令都有哪些,使用方法1. 文件类型的分类文件类型:– 普通文件类型d:目录文件b:块设备c:字符设备l:符号链接文件p:管道文件,pipes:套接字文件,socket例如: [root@loong ~]# …

    Linux干货 2017-07-19