文件压缩,解压缩及归档

    在Linux的环境中,压缩文件的扩展名大多是:“*.tar, *.tar.gz, *.gz, *.Z, *.bz2, *.xz”,因为 Linux 支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件,当你下载到某个压缩文件时,自然就需要知道该文件是由哪种压缩指令所制作出来的,好用来对照着解压缩,虽然 Linux 文件的属性基本上是与文件名没有绝对关系的, 但是为了便于识别,所以适当的扩展名还是必要的!常见的压缩文件扩展名

blob.png 


1,gzip/gunzip/zcat

    gzip 选项….file….

    -d:解压缩,相当于gunzip;

    -#:指定压缩比,默认是6;数字越大压缩比越大;(1-9)

    -c:将压缩结果输出至标准输出;

    gzip -c file > /path/to/sumfile.gz

2,bzip2/bunzip2/bzcat

    bzip2 选项…file…

    -d:解压缩

    -#:指定压缩比,默认是6,数字越大压缩比越大;(1-9)

    -k:keep,保留原文件

3,xz/unxz/xzcat

    lzma/unlzma,lzma

     xz 选项…file…

    -d:解压缩

    -#:指定压缩比,默认是6,数字越大压缩比越大;(1-9)

    -k:保留原文件


    重点说tar虽然 gzip, bzip2, xz 也能够针对目录来进行压缩,不过, 这两个指令对目录的压缩指的是“将目录内的所有文件 "分别" 进行压缩”的动作!而不像在 Windows 的系统,可以使用类似 WinRAR 这一类的压缩软件来将好多数据“包成一个文件”的样式。tar 可以将多个目录或文件打包成一个大文件,同时还可以通过 gzip/bzip2/xz 的支持,将该文件同时进行压缩! 

归档:tar,cpio

    tar命令:

    tar 选项… fike…

    (1)创建归档

        -c -f /path/to/sumfile.tar file…

        -cf /path/to/sumfile.tar file…

    (2)展开归档

        -xf /path/from/somefile.tar

        -xf /path/from/somefile.tar -C /path/to/somedir

    (3)查看归档文件的文件列表

        -tf /path/to/somefile.tar

        du -sh /etc/:此命令可查看目录的大小

  归档完成后通常需要压缩,结合此前的压缩工具,就能实现压缩多个文件了;

    (4)归档并压缩

    -z:gzip2

    -zcf /path/to/somefile.tar.gz file…

    解压缩并展开归档-zxf /path/to/somefile.tar.gz

    -j:bzip2

        -jcf 压缩

        -jxf 解压

    -J:xz

        -Jcf 压缩

        -Jxf 解压 


 

最简单的使用 tar 

压缩 tar -Jcvf filename tar.xz 要被压缩的文件或目录名称(以xz格式压缩)

   tar -jcvf filename tar.bz2 要被压缩的文件或目录名称(以bzip2格式压缩)

   tar -zcvf filename tar.gz 要被压缩的文件或目录名称(以gzip格式压缩)

   特别留意,-z, -j, -J 不可以同时出现在一串命令行中,那个filename.tar.xz是我们自己取的文件名,tar并不会主动的产生创建的文件名

查询  

   tar -Jtvf filename tar.xz (查看以xz格式压缩后的文件名)

   tar -jtvf filename tar.bz2 (查看以bzip2格式压缩的文件名)

   tar -ztvf filename tar.gz (查看以gzip格式压缩的文件名) 

解压   

   tar -Jxvf filename tar.xz (解压以xz格式压缩的包)

   tar -jxvf filename tar.bz2(解压以bzip2格式压缩包)

   tar -zxvf filename tar.gz (解压以gzip格式压缩包)


完   

原创文章,作者:M20-1马星,如若转载,请注明出处:http://www.178linux.com/37279

(0)
M20-1马星M20-1马星
上一篇 2016-08-18 15:20
下一篇 2016-08-18 15:20

相关推荐

  • N22-第三周作业

    列出当前系统上所有已经登录的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@localhost ~]# w |cut -d ' ' -f1 |sort -u lucy root USER 2.取出最后登录到当前系统的用户的相关信息。 [root@localhost ~]# last -1 root   &nbs…

    Linux干货 2016-08-28
  • Linux的任务计划

    Linux的任务计划         我们在使用系统的过程中,经常需要在以后的某个时间点执行一个任务,而我们又不在机器旁边的时候,比如在半夜时服务器访问的用户很少,宽带资源很充足的时候,要去镜像软件包、重启服务器(虽然Linux很稳定)等,或者需要服务器在每天的特定时间去备份数据…

    2017-03-19
  • 配置LAMP (php-fpm模式)部署步骤

    配置LAMP (php-fpm模式)部署步骤 1.安装mariadb yum install maridb-server -y 1).配置server.cnf cp /etc/my.cnf.d/server.cnf{,.back} vim /etc/my.cnf.d/server.cnf ##mariadb服务器端配置文件 [mysqld] ##以下项是优化…

    Linux干货 2017-06-02
  • Linux下LVM

    LVM(Logic Volume Management,逻辑卷管理         由多个块设备(pv,卷)组成一个逻辑卷组(vg),接着在逻辑组上创建逻辑卷(lv),实现在线缩减逻辑卷与逻辑卷组。 实验:     1、VM虚拟机添加硬盘:…

    Linux干货 2016-06-09
  • linux文本处理三剑客-sed

    sed 是什么? sed是一种流编辑器,它是文本处理中非常中的工具,在linux中被称为linux文本处理三剑客之一,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文…

    Linux干货 2017-03-15
  • 文件搜索之find的使用

    一.find介绍:   find是Linxu中一个十分常用的文件查找工具,其工作原理是通过遍历启起始路径下文件层级结构完成的,其特点是查找速度慢,能做到实时查找和精确查找。 二.使用方法: find  start_path search_conditions  action 1.statr_path:所要查找的文件的起始位置,默…

    Linux干货 2016-11-01

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-19 11:40

    归档和解压缩对于我们来说可以大大节约磁盘空间,他是通过时间与空间来进行交换的,这也是我们需要熟练掌握的知识点。