zoukankan      html  css  js  c++  java
  • Linux下的压缩及归档

      Linux下常用的压缩格式有:

    gz,bz2,xz,zip,Z //只能压缩文件不能压缩目录,如果传递一个目录,他会把目录中的文件逐个压缩
      、、压缩算法:算法不同,压缩比也不同
    gz:gzip,压缩后为 .gz //gunzip解压缩
    -d :解压缩
    -#(#范围为1-9):指定压缩比,压缩比越小,压缩速度越快,压缩后的文件也越大,默认为6
    zcat:在不解压的情况下查看压缩文本文件的内容(临时解压文件查看,关闭之后临时文件被删除)
    bz2:bzip2,压缩后为.bz2
    比gzip更大压缩比的压缩工具,对大文件来讲,bzip2有很大优势,使用格式近似 //加压缩bunzip2
    -d:
    -#:(1-9)
    -k:可以保存原文件
    bzcat:如果是文本文件,可以不用解压缩直接查看
    xz:压缩后为.xz 用法相似 ||unxz,xzdec解压很小的文件,解压到屏幕
    -d:
    -#:
    -c:输入到屏幕上来
    -k:保留原文件
    xzcat:
    只能压缩文件,压缩比会更大
    可以一次压缩一个文件也可以一次压缩多个文件
    默认这些压缩命令压缩完会删除原文件,只保留压缩后的文件
    解压缩之后也会默认删除原来的压缩文件,只保留解压缩之后的文件
     
    zip: //压缩后默认不删除原文件
    可以压缩目录,但压缩比不大
    使用格式:zip 指定压缩名 要压缩的文件或目录
    eg:zip test.zip test/ //压缩test目录,压缩完之后是test.zip
    zip将多个文件压缩在一起,是一个既压缩又归档的命令
    unzip 压缩文件:解压缩
    archive 归档,把多个文件整合在一起,归档本身并不意味着压缩
     
     
    tar: //只归档不压缩的文件。。。.tar
    -c:创建归档文件
    -f FILE.tar:操作的归档文件,指定压缩后文件的名称,f后必须带上参数
    eg:tar -cf test.tar test*
    -xf FILE.tar:展开归档文件
    --xattrs: 表示在归档的同时,保留文件的扩展属性信息
    -tf FILE.tar:不展开归档,查看归档到底归档了哪些文件
    即归档又压缩:
    -zcf:调用gzip,并创建归档文件
    eg:tar -zcf test.tar.zip test/
    -zxf:先解压缩后归档
    eg:tar -zxf test.tar.zip //删除时-z选项可以删除
     
    -jcf:调用bzip2,并创建归档文件
    -jxf:先解压缩后归档
     
    -Jcf:调用xz,并创建归档文件
    -Jxf:先解压缩后归档
     
    -gtf:不解压直接看归档的文件 -g可以省略,因为系统可以根据后缀名判断解压的类型
    tar也是一个很好用的备份工具
     
    cpio: 做成归档或者展开归档 把文件做成归档或者从归档中复制出来文件
     
    练习:写一个脚本
    从键盘让用户输入几个文件,脚本能够将此几个文件归档压缩成一个文件
    sum.sh //直接跟命令行交互
    #!/bin/bash
    //echo -n "Input two intergers" //-n是为了不换行的输入
    read -p "Input two intergers" A B //-p直接提示
    echo "$A + $B is $[$A+$B]"
     
    #!/bin/bash
    read -p "Three files:" FILE1 FILE2 FILE3
    read -p "Destination" DEST
    read -p "Compress[gzip|bzip|xz]:" COMP
     
    case COMP in
    gzip)
    tar -zcf $(DEST).tar.gz $FILE1 $FILE2 $FILE3
    ;;
    bzip2)
    tar -jcf $(DEST).tar.bz2 $FILE1 $FILE2 $FILE3
    ;;
    xz)
    tar -cf $(DEST).tar $FILE1 $FILE2 $FILE3
    xz $(DEST).tar
    ;;
    *)
    echo "Unknown"
    exit 9
    ;;
    esac
  • 相关阅读:
    .NetCore 3.1和.NetCore 5.0 中WebApi的请求参数的验证方法
    php 使脚本持续的运行
    Elasticsearch es三种分页方式和对比
    es 大批量写入提高性能的策略
    php 使用多进程批量插入数据
    【转】EM算法MATLAB代码及详细注解
    【转】详解EM算法与混合高斯模型(Gaussian mixture model, GMM)
    【转】高斯混合模型
    【转】二维高斯分布(Two-dimensional Gaussian distribution)的参数分析
    word使用dot模板以spring word 模板为例
  • 原文地址:https://www.cnblogs.com/qingjiaowoxiaoxioashou/p/7007920.html
Copyright © 2011-2022 走看看