Linux——压缩文件

为什么需要压缩文件?
    文件在传输过程中,可能由于文件过大,传输所需时间过多。减少文件大小有两个明显的好处,一是可以减
    少存储空间,二是通过网络传输文件时,可以减少传输的时间。对于某些不常用文件,减少它对硬盘空间的
    浪费,我们往往会将其压缩,在需要时再解压缩。
   
   
Linux中有哪些文件压缩命令?
    在Linux中,提供了许多文件压缩命令,针对所需要压缩的文件不同,我们可以选用不同的压缩方式。
    压缩格式:gz bz2 xz zip z
    根据不同的压缩算法,压缩比也不同。
   
压缩命令详解:
   
    gzip: FILE.gz
    gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中
    比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。
   
    语法格式:gzip 选项 参数
   
    常用选项:
        -a或——ascii:使用ASCII文字模式;
    -d或--decompress或----uncompress:解开压缩文件;
    -f或——force:强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接;
    -l或——list:列出压缩文件的相关信息;
    -n或--no-name:压缩文件时,不保存原来的文件名称及时间戳记;
    -N或——name:压缩文件时,保存原来的文件名称及时间戳记;
    -q或——quiet:不显示警告信息;
    -r或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
    -S或<压缩字尾字符串>或----suffix<压缩字尾字符串>:更改压缩字尾字符串;
    -t或——test:测试压缩文件是否正确无误;
    -#<压缩比>:压缩比是一个介于1~9的数值,默认值为 6 ,指定的数值越大,压缩效率就会愈高;
    --best:此参数的效果和指定“-9”参数相同;
    --fast:此参数的效果和指定“-1”参数相同。
  
  [wangml@iZwz976helaylvgqok97prZ scourse]$ ls
  passwd
  [wangml@iZwz976helaylvgqok97prZ scourse]$ gzip *
  [wangml@iZwz976helaylvgqok97prZ scourse]$ ls
  passwd.gz
  [wangml@iZwz976helaylvgqok97prZ scourse]$ gzip -d *
  [wangml@iZwz976helaylvgqok97prZ scourse]$ ls
  passwd
  
  默认情况下,源文件在被压缩完后会被删除
  
  zcat: 在不解压的情况下,查看被gzip压缩的文本文件的内容。
  
  
  bzip2: FILE.bz2
  bzip2比gzip有更大的压缩比,使用格式近似。
  语法格式:bzip2 选项 参数
  常用选项:
    -c或——stdout:将压缩与解压缩的结果送到标准输出;
    -d或——decompress:执行解压缩;
    -f或-force:bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖。请使用此参数;
    -k或——keep:bzip2在压缩或解压缩后,会删除原始文件。若要保留原始文件,请使用此参数;
    -s或——small:降低程序执行时内存的使用量;
    -v或——verbose:压缩或解压缩文件时,显示详细的信息;
    -z或——compress:强制执行压缩;
    -#<压缩比>:压缩比是一个介于1~9的数值,默认值为 6 ,指定的数值越大,压缩效率就会愈高;
  
  bunzip2 文件: 解压缩 .bz2 文件
  
  bzcat:在不解压的情况下,查看被bzip2文本文件的内容。
  
  
  xz:FILE.xz
  压缩比更大
  语法格式:xz 选项 参数
  常用选项:
      -d:解压缩
      -#<压缩比>:压缩比是一个介于1~9的数值,默认值为 6 ,指定的数值越大,压缩效率就会愈高;
      -k:压缩时保留源文件,也可以使用输出重定向保留源文件
     
  unxz:解压缩
  
  xzcat:在不解压的情况下,查看被xz文本文件的内容,同xzdec
  
  
  zip:可以用来解压缩文件,或者对文件进行打包操作。zip是个使用广泛的压缩程序,文件经它压缩后会另外
  产生具有“.zip”扩展名的压缩文件。
  
  语法格式:zip 压缩后的文件名 要压缩的文件
  
  常用选项:
    -A:调整可执行的自动解压缩文件;
    -b<工作目录>:指定暂时存放文件的目录;
    -c:替每个被压缩的文件加上注释;
    -d:从压缩文件内删除指定的文件;
    -D:压缩文件内不建立目录名称;
    -f:此参数的效果和指定“-u”参数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩
        文件内,使用本参数会一并将其加入压缩文件中;
    -F:尝试修复已损坏的压缩文件;
    -g:将文件压缩后附加在已有的压缩文件之后,而非另行建立新的压缩文件;
    -i<范本样式>:只压缩符合条件的文件;
    -j:只保存文件名称及其内容,而不存放任何目录名称;
    -J:删除压缩文件前面不必要的数据;
    -k:使用MS-DOS兼容格式的文件名称;
    -l:压缩文件时,把LF字符置换成LF+CR字符;
    -ll:压缩文件时,把LF+cp字符置换成LF字符;
    -m:将文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中;
    -n<字尾字符串>:不压缩具有特定字尾字符串的文件;
    -o:以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同;
    -q:不显示指令执行过程;
    -r:递归处理,将指定目录下的所有文件和子目录一并处理;
    -S:包含系统和隐藏文件;
    -t<日期时间>:把压缩文件的日期设成指定的日期;
    -T:检查备份文件内的每个文件是否正确无误;
    -u:更换较新的文件到压缩文件内;
    -v:显示指令执行过程或显示版本信息;
    -V:保存VMS操作系统的文件属性;
    -w:在文件名称里假如版本编号,本参数仅在VMS操作系统下有效;
    -x<范本样式>:压缩时排除符合条件的文件;
    -X:不保存额外的文件属性;
    -y:直接保存符号连接,而非该链接所指向的文件,本参数仅在UNIX之类的系统下有效;
    -z:替压缩文件加上注释;
    -$:保存第一个被压缩文件所在磁盘的卷册名称;
    -<压缩比>:压缩比是一个介于1~9的数值。 
    
    unzip:解压缩
   
   
打包和压缩的区别?
    打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
   
    
为什么要区分这两个概念呢?
    这源于Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得先将这一大堆
    文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip、bzip2命令)。
   
   
归档工具:
    tar:默认不储存扩展属性
    利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的
    文件。利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合
    成为一个文件以便于网络传输是非常有用的。
   
    语法格式:tar 选项 参数
   
    常用选项:
        -c: 创建归档文件
        -x:展开归档文件
        -f:操作归档文件
        --xattrs: 归档时,保留文件扩展属性信息
        -t:不展开归档,只查看归档了哪些文件
        -zcf:归档并调用gzip压缩
        -zxf:调用gzip压缩再归档
        -jcf:归档并调用bzip2压缩
        -jxf:调用bzip2压缩再归档
        -Jcf:归档并调用xz压缩
        -Jxf:调用xz压缩再归档

cpio: 归档工具

Linux —— 压缩文件的更多相关文章

  1. linux 压缩文件的命令总结

    Linux压缩文件的读取 *.Z       compress 程序压缩的档案: *.bz2     bzip2 程序压缩的档案: *.gz      gzip 程序压缩的档案: *.tar     ...

  2. Linux 压缩文件的命令行总结

    Linux压缩文件的读取 ·    *.Z       compress 程序压缩的档案: ·    *.bz2     bzip2 程序压缩的档案: ·    *.gz      gzip 程序压缩 ...

  3. 【Linux】【二】linux 压缩文件(txt)、查看压缩文件内容、解压缩文件、

    通过Xshell 压缩文件.解压缩文件 gzip tools.txt 压缩[tools.txt]文件 zcat tools.txt.gz   查看压缩文件[tools.txt.gz]内容 gunzip ...

  4. linux 压缩文件 及压缩选项详解

    本文介绍linux下的压缩程序tar.gzip.gunzip.bzip2.bunzip2.compress.uncompress. zip. unzip.rar.unrar等程式,以及如何使用它们对. ...

  5. Linux压缩文件笔记

    https://my.oschina.net/dongqianlin/blog/97168http://linux.it.net.cn/CentOS/fast/2017/0628/27029.html ...

  6. linux压缩文件——解压方法

    linux下 tar解压 gz解压 bz2等各种解压文件使用方法 .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar ...

  7. linux压缩文件(夹) zip uzip命令的用法

    压缩文件(夹) # 压缩列举的文件,格式如下: zip 压缩包名称 文件1 文件2 文件3 ... # 压缩test.txt, a.out文件,并取名为abc.zip $ zip abc.zip te ...

  8. linux 压缩文件或文件夹

    zip demo.mp4.zip demo.mp4 zip -r videos.zip videos # 压缩文件夹需要加-r

  9. kali linux 压缩文件解压缩命令(包含7z)

    tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压1 ...

随机推荐

  1. AHOI2014/JSOI2014 奇怪的计算器

    题目描述 题解: 考虑到经过一系列变化后小数不可能比大数大,我们可以用线段树维护区间修改. 重点是,每个节点都可以通过$a[i]=a[i]*t1+a0[i]*t2+t3$这个函数来表示,我们就可以把三 ...

  2. MySQL索引之博客荐读

    推荐博客: 寒江独钓. 浅谈算法和数据结构: 十 平衡查找树之B树 张洋. MySQL索引背后的数据结构及算法原理 漫画算法:什么是 B+ 树? B树和B+树的插入.删除图文详解 Jeremy Col ...

  3. js事件默认行为

    事件默认行为: 当一个事件发生的时候浏览器自己默认做的事情 怎么阻止? 当前这个行为是什么事件触发的,然后在这个事件的处理函数中使用 return false; 但是return false 阻止的是 ...

  4. vue App.vue router 过渡效果, keep-alive 结合使用示例

    1, router.js配置 每个路由的index值 2, router.js配置 每个路由的keepAlive值 app.vue 代码 <template> <div id=&qu ...

  5. tornado框架基础04-模板基础

    01 模板 模板演示 配置路径 在 application 中配置模板文件和静态文件的路径: template_path='templates', static_path='static', 模板 & ...

  6. 03002_Http请求协议分析

    1.编写一个form.html的表单页面 (1)使用EclipseEE新建一个动态的web项目: (2)Dynamic web module version选择2,5版本: (3)新建一个form.h ...

  7. 大数据学习——mapreduce共同好友

    数据 commonfriends.txt A:B,C,D,F,E,O B:A,C,E,K C:F,A,D,I D:A,E,F,L E:B,C,D,M,L F:A,B,C,D,E,O,M G:A,C,D ...

  8. Jmeter接口测试-正则表达式提取器-提取token

    在使用Jmeter过程中会有这样的场景, A接口执行后返回json字符串, 这个json中有B接口需要的某一个参数, 那如何来实现呢? 第一步:添加正则表达式 方法非常简单, 这就是我们今天要讲的正则 ...

  9. HDU 5468 Puzzled Elena

    Puzzled Elena Time Limit: 2500ms Memory Limit: 131072KB This problem will be judged on HDU. Original ...

  10. [luoguP3258] [JLOI2014]松鼠的新家(lca + 树上差分)

    传送门 需要把一条路径上除了终点外的所有数都 + 1, 比如,给路径 s - t 上的权值 + 1,可以先求 x = lca(s,t) 类似数列上差分的思路,可以给 s 和 f[t] 的权值 + 1, ...