• Linux命令——gzip、zcat、bzip2、bzcat、tar


    参考:Linux命令——ar

    为什么文件要压缩?

    当文件过大时,无论是本地做备份,复制都很麻烦,而且还浪费磁盘空间。如果用网络传输,大文件无疑会浪费大量宝贵带宽。文件压缩技术可以有效解决这个问题,但是压缩过的文件是不能直接被OS使用的,必须要解压缩才可以。

    常见压缩文件

    在Linux的环境中,压缩文件的扩展名大多是:『*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2』,为什么会有这样的扩展名呢?不是说 Linux 的扩展名没有什么作用吗?

    因为 Linux 支持的压缩命令非常多,且不同的命令所用的压缩技术并不相同,彼此之间无法互通压缩/解压缩文件。 所以,当你下载到某个压缩文件时,自然就需要以某种方式知道该文件是由哪种压缩命令造出来的,方便对照解压缩,后缀名正是解决这个问题的方法。

    *.Z compress 程序压缩的文件;
    *.gz gzip 程序压缩的文件;
    *.bz2 bzip2 程序压缩的文件;
    *.tar tar 程序打包的数据,并没有压缩过;
    *.tar.gz tar 程序打包的文件,其中并且经过 gzip 的压缩
    *.tar.bz2 tar 程序打包的文件,其中并且经过 bzip2 的压缩
    View Code

    Linux上常见的压缩命令就是 gzip 与 bzip2 ,至于 compress 已经淘汰了。 gzip 是由 GNU开发的压缩命令,该命令已取代 compress 。 后来 GNU 又开发出 bzip2 这个压缩比更好的压缩命令!不过,这些命令通常仅能针对一个文件来压缩与解压缩,如此一来, 每次压缩与解压缩都要一大堆文件,岂不烦人?此时,那个所谓的『打包软件, tar』就显的很重要啦!

    这个 tar 可以将很多文件『打包』成为一个文件!甚至是目录也可以这么玩。不过,单纯的 tar 功能仅是『打包』而已,亦即是将很多文件集结成为一个文件, 事实上,他并没有提供压缩的功能,后来,GNU将整个 tar 与压缩的功能结合在一起,如此一来提供使用者更方便并且更强大的压缩与打包功能!

    gzip,zcat 

    选项与参数

    -c :压缩
    -d :解压缩,会把原本的.gz删除
    -t :可以用来检验一个压缩档的一致性~看看文件有无错误;
    -v :可以显示出原文件/压缩文件的压缩比等资讯;
    -# :压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!默认是 -6

    zcat

    可以查看.gz文件

    bzip2,bzcat 

    选项与参数

    -c :压缩

    -d :解压缩,会删除原来bz2文件

    -k :保留原始文件,而不会删除原始的文件喔!

    -z :强制执行压缩

    -v :可以显示出原文件/压缩文件的压缩比等资讯;

    -f  :bzip2在压缩或解压缩时,若输出文件与现有文件同名,预设不会覆盖现有文件。若要覆盖,请使用此参数。

    -s  :降低程序执行时内存使用量

    -t   :测试.bz2压缩文件的完整性

    -L  :  显示license信息

    --repetitive-best : 若文件中有重复出现的资料时,可利用此参数提高压缩效果。

    --repetitive-fast : 若文件中有重复出现的资料时,可利用此参数加快执行速度。

    -# :与 gzip 同样的,都是在计算压缩比的参数, -9 最慢, -1 最快!

    bzcat

    可以查看.bz2文件

    tar

    选项与参数

    -c :创建打包文件,可搭配 -v 来察看过程中被打包的档名(filename)

    -t :察看打包文件的内容含有哪些文件,重点在看文件名;一般与-f连用

    -x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开

    -j :透过 bzip2 的支持进行压缩/解压缩:此时档名最好为 *.tar.bz2

    -z :透过 gzip 的支持进行压缩/解压缩:此时档名最好为 *.tar.gz

    -v :在压缩/解压缩的过程中,将正在处理的档名显示出来!

    -f filename:-f 后面要立刻接要被处理的档名!建议 -f 单独写一个选项罗!

    -C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。

    -p :保留备份数据的原本权限与属性,常用於备份(-c)重要的配置档

    -P :保留绝对路径,亦即允许备份数据中含有根目录存在之意;

    --exclude=FILE:在压缩的过程中,不要将 FILE 打包!

     

  • 相关阅读:
    Shell入门
    Linux基本的指令操作
    python网络爬虫入门范例
    Android中scrollview的scrollto方法不起作用的解决办法
    (转)Android利用canvas画各种图形(点、直线、弧、圆、椭圆、文字、矩形、多边形、曲线、圆角矩形)
    unable to load class org.codehaus.groovy.runtime.typehandling.shorttypehandling解决方法
    JavaScript运行原理
    AsyncTask的doInBackground不工作原因分析
    Android中的多线程与异步任务
    使用webview加载网页时session同步
  • 原文地址:https://www.cnblogs.com/kelamoyujuzhen/p/9163232.html
Copyright © 2020-2023  润新知