• 【Linux基本操作】系列01:深入浅出Linux压缩命令


    压缩技术:比如存1时,共8bit,最右边为1,其它7位为0,压缩时将0压缩。

    或者将重复数据压缩。

    常用命令:

    compress(淘汰)

    gzip(常用) 与 zcat

    bzip2(常用)   与bzcat

    打包命令tar

    压缩文件的扩展名大多是*.tar  *.tar.gz    *.tgz   *.gz   *.Z   *.bz2

    其中

    *.Z是compress压缩的;

    *.gz是gzip压缩的;

    *.bz2是bzip2压缩的;

    *.tar是tar程序打包但没有压缩的;

    .tar.gz是打包后并经gzip压缩的;

    .tar.bz2是打包后并经bzip2压缩的;

    通常,压缩与解压缩只针对一个文件;从而打包指令就派上用场了。

    gzip与zcat

    gzip可以解开compress,zip与gzip等软件所压缩的档案,

    //说明:[]里面是选项

    gzip [-cdtv#] 档名  //c输出到屏幕,d解压缩时用,t检查有无错误,v显示压缩比等信息

                                         //#压缩等级,-1最快但压缩比最差,-9恰相反,默认-6;

     查看:

    zcat 档名.gz  //cat可以查看纯文本,zcat则可以查看压缩文件里的纯文本文件(注意是针对文本文件)

    如gzip -v man.config  //压缩后源文件不再存在,被gzip压缩的文件在windows中可以用winRAR打开。

    解压gzip –d man.config.gz   //同时删除.gz压缩源文件

    用最佳压缩比压缩且不删除源文件gzip -9 -c man.config > man.config.gz 

    bzip2与bzcat

    比gzip更好

    bzip2 [-cdkzv#] 文件  //k保留源文件,-z用于压缩,其它同上

    如:bzip2 -z man.config

    解压:bzip2 -d man.config.bz2

    用最佳压缩比压缩且不删除源文件:bzip2 -9 -c man.config > man.config.bz2

    如果扩展名为.bz    .bz2 .tbz  .tbz2时,可以尝试用bzip2来解

     查看:bzcat 档名.bz2

    tar

    tar [-j或-z][cv][-f 建立的档名]  filename…   //打包与压缩

    tar [-j或-z][xv][-f 建立的档名] [-C  目录]   //解压

    tar [-j或-z][tv][-f 建立的档名]          //查看

    参数:

    c建立打包档案,x解压, t查看含有哪些文件,(cxt不能同时使用哦)v显示处理的文件

    j最好用于tar.bz2  z最好用于.tar.gz。j比z有更好的压缩比

    此外,还有-p(小写)保留原本权限和属性,常用于备份

     

    如果不加[-j或-z],档名最好为.tar

    eg:在Test_tar目录下有2个文件

    压缩:首先进入上一层目录

    tar -zcv -f ray.tar.gz Test_tar

    tar -jcv -f ray.tar.bz2 Test_tar  //Good

    查看压缩包里有什么文件:t和v在一起(t重点在查看含有哪些文件,v显示详细信息)

    tar -jtv -f ray.tar.bz2

    tar -jt -f ray.tar.bz2   

    tar -ztv -f ray.tar.gz

    tar -zt -f ray.tar.gz

    解压

    tar -zxv -f ray.tar.gz -C /tmp

    tar -zx -f ray.tar.gz -C /tmp

    tar -jx -f ray.tar.bz2 -C /tmp     

    打包目录,但不包含该目录下某些文件(比如打包文件本身):

    假设我要打包/etc和/root这2个目录,但不想打包/root/etc*开头的档案,而且打包成/root/elesos.tar.bz2(当然自己不能打包自己,因为这个文件放在/root下嘛)

    //exclude前面有2个短横线

    tar –jcv –f /root/elesos.tar.bz2 –exclude=/root/etc*\

    --exclude=/root/elesos.tar.bz2    /etc    /root 

     

     

  • 相关阅读:
    ASP.Net MVC-Web API使用Entity Framework时遇到Loop Reference
    springboot-32-使用mvc测试
    docker-dockerfile使用
    java-jmx使用
    docker-使用ali云加速
    docker-基础命令
    centos7-使用nginx做ftp站
    maven-插件-不同的开发环境指定
    maven
    mysql-定时对表分区
  • 原文地址:https://www.cnblogs.com/elesos/p/2763157.html
Copyright © 2020-2023  润新知