文件压缩,解压缩及归档

    在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

相关推荐

  • LVM逻辑卷管理

    LVM逻辑卷管理 LVM全称为Logical VolumeManager逻辑卷管理器,LVM是Linux环境中对磁盘分区进行管理的一种机制,是建立在硬盘和分区之上、文件系统之下的一个逻辑层,可提高磁盘分区管理的灵活性。 其中 PV:Physical Volume 物理卷 VG:volume Group 卷组 LV:Logincal Volume 逻辑卷 实验…

    2017-08-14
  • 开班第一天,新获得的技能

    新接触命令 lscpu 显示CPU信息 gedit 文件名 类似于记事本 ** 注意 这个命令适用于图形界面。 cat /proc/partition 显示分区信息 cat /proc/meminfo 显示内存大小 cat /proc/swaps 显示虚拟内存 cat …

    Linux干货 2017-02-17
  • 文本处理三剑客之sed

    文本处理三剑客之sed 一、处理文本的工具sed 概念: Stream EDitor, 行编辑器 v sed是一种流编辑器,它一次处理一行内容。处理时,把 当前处理的行存储在临时缓冲区中,称为“模式空间”( pattern space),接着用sed命令处理缓冲区中的内容 ,处理完成后,把缓冲区的内容送往屏幕。接着处理下一 行,这样不断重复,直到文件末尾。文…

    Linux干货 2016-08-12
  • yum 仓库

    Yum 仓库     yum源就是一个软件集合地,你只需要搜索并安装你想要的软件,它会帮你解决大部分软件的依赖问题。本地源比如说光盘里面一般会附带一些软件,这个时候就可以把光盘当成本地源来安装软件。网络源比如说aliyun的镜像网站,这就属于网络源,可以通过互联网把软件下载下来并安装。   yum 仓库 &n…

    2017-06-24
  • MogileFS基于Nginx反向代理实现分布式存储与访问

    前言 随着信息社会的发展,越来越多的信息被数据化,尤其是伴随着大数据时代的来临,数据呈爆炸式增长。传统存储在面对海量数据存储表现出的力不从心已经是不争的事实,例如:纵向扩展受阵列空间限制,横向扩展受交换设备限制,节点受文件系统限制等。而分布式存储的出现在一定程度上有效的缓解了这一问题,目前比较流行的分布式文件系统有:GFS、HDFS、GlusterFS、Mo…

    Linux干货 2015-07-08
  • Linux网络

    网络概念 OSI模型网络设备TCP/IPIP地址   什么是网络 资源共享的功能和优点数据和应用程序资源网络存储备份设备 常见的网络物理组件 网络应用程序Web 浏览器(Chrome、IE、Firefox等)即时消息(QQ、微信、钉钉等)电子邮件(Outlook、foxmail 等)协作(视频会议、VNC、Netmeeting、WebEx 等)we…

    Linux干货 2017-08-19

评论列表(1条)

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

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