10.压缩解压类

压缩和解压类

  • 压缩指令gzip,解压缩指令gunzip

    gzip 文件         // 压缩文件,只能压缩成.gz格式
    gunzip 文件.gz    // 解压缩文件
    
  • 压缩文件指令zip解压缩文件指令unzip

    通常用于项目打包发布中

    zip [选项] XXX.zip 将要压缩的内容     // 压缩文件和目录的命令
    unzip [选项] XXX.zip    // 解压缩文件
    

    zip常用选项:-r 递归压缩即压缩目录

    unzip常用选项:-d<目录> 指定解压后文件存放的目录

    zip -r myhome.zip /home/ 将home目录及其包含的文件和子文件夹都压缩

    unzip -d /opt/tmp /home/myhome.zip

  • 打包指令tar(通过选项控制是执行压缩还是解压缩)

    tar指令打包后的文件是.tar.gz的文件格式

    tar [选项] XXX.tar.gz 打包的内容    // 打包目录,压缩后的文件格式.tar.gz
    
    选项说明 功能说明
    -c 产生.tar打包文件
    -v 建议使用ls -lh查看;显示详细信息(在压缩解压缩的过程中,将正在处理中的文件名展示出来)
    -f 指定压缩后的文件名(通常建议单独拿出来使用,其后必须立马接上需要操作的文件名)
    -z 通过gzip的支持进行压缩/解压缩;也可打包同时压缩,此时文件名最好为*.tar.gz
    -x 解包或解压缩.tar文件,可以搭配-C在特定目录解压
    注意:-c -t -x不可同时出现在一串命令行中
    -t 查看打包文件的内容含有哪些文件名
    -j 通过bzip2的支持进行压缩/解压缩;此时文件名最好为*.tar.bz2(z,j,J不可同时出现)

    打包的概念:将多个目录和文件汇总成一个总文件

    压缩的概念:将大文件通过压缩算法变成小文件

    应用示例(建议使用相对路径)

    1. 压缩多个文件,将/home/pig.txt和/home/cat.txt压缩成pc.tar.gz
      • tar -zcvf pc.tar.gz pig.txt cat.txt
    2. 将/home的文件夹压缩成myhome.tar.gz
      • tar -zcvf myhome.tar.gz /home/
    3. 将pc.tar.gz解压缩到当前目录,切换到/opt/
      • tar -zxvf pc.tar.gz
    4. 将myhome.tar.gz解压到/opt/tmp2目录下
      • tar -zxvf /home/myhome.tar.gz -C /opt/tmp2

    最基本的三种使用:

    • 压缩:tar -jcv -f 文件名.tar.bz2 要被压缩的文件或目录名称
    • 查询:tar -jtv -f 文件名.tar.bz2
    • 解压缩:tar -jxv -f 文件名.tar.bz2 -C 欲解压缩的目录

你可能感兴趣的:(10.压缩解压类)