• 压缩,解压缩工具及bash脚本编程


    压缩和解压缩工具

    • 压缩:时间换空间
    • 早期工具:compress/uncompress,文件后缀名为.Z
    • 比较流行的工具:gzip/gunzip,文件后缀名为.gz
    • 更新的压缩比更大的工具:bzip2/bunzip2,文件后缀名为.bz2
    • 最新的越来越受欢迎的工具:xz/unxz,文件后缀名为.xz
    • 注:bzip2没有撼动gzip的地位,但是xz开始做到了
    • 其它的
      • zip/unzip:压缩归档工具
      • lzma/unlzma:文件后缀名为.lzma
      • tar,cpio:归档工具

    gzip/gunzip/zcat:

    • gzip [OPTION]... FILE...:压缩完成后,自动删除原文件
      • -d:解压缩,相当于gunzip
      • -#:指定压缩比,默认是6;数字越大,压缩比越大(1-9);建议不要改这个值
      • -c:将压缩后的结果输出到屏幕,保留原文件
        • gzip -c FILE > FILE.gz,输出重定向,实现文件压缩,同时保留原文件
        • 注:如果输出到屏幕,一堆乱码,可以使用reset命令重置屏幕
    • gunzip FILE:解压缩,解压缩完成后,自动删除压缩文件
    • zcat:查看压缩后的文件内容
      • 注:cat命令无法查看压缩后的文件内容

    bzip2/bunzip2/bzcat

    • bzip2:用法与gzip一样
      • 唯一不同点,-k直接保留原文件,不需要-c输出重定向

    xz/unxz/xzcat

    • 与bzip2用法完全一样

    注:上述三款工具只能压缩文件,不能压缩目录;如果想压缩目录,需要先归档

    归档工具:tar,cpio

    tar命令

    • tar [OPTION]... FILE...
    • tar的选项可以不带横杆-
    • -c:创建归档
      • -c -f FILE.tar FILE...:必须与-f结合使用,指定归档文件的名称
      • 也可以写成-cf FILE.tar,注:不能写成-fc,否则会把后面的参数当作c的参数
    • -x:展开归档
      • tar -xf FILE.tar -C DIR:如果不加-C,则展开归档至当前目录
    • -t:查看归档文件中的文件列表
      • tar -tf FILE.tar
    • -z:归档并使用gzip2压缩/解压缩并展开归档
      • tar -zcf FILE.tar.gz FILE...
      • tar -zxf FILE.tar.gz -C DIR:有gz后缀,可以省略-z
    • -j:与-z用法一样,压缩工具使用bzip2
    • -J:与-z用法一样,压缩工具使用xz

    zip/unzip:也是一个压缩工具

    • 既能归档,又能压缩
    • 各个操作系统都支持
    • 压缩比有限
    • 文件后缀名.zip
    • 不常用

    练习:下载redis-3.0.2.tar.gz,展开至/tmp目录;而后重新归档压缩为xz格式

    bash脚本编程之用户交互

    • 使脚本具有灵活性的方式有两种:
      • 脚本参数
      • 用户交互:通过键盘输入数据,从而完成变量赋值操作
        • read命令:内嵌命令
        • read [OPTION]... [NAME]...
          • -p "PROMPT"
          • -t TIMEOUT

            

    检测脚本中的语法错误:bash -n SCRIPT 

    调试执行:bash -x SCRIPT

     

  • 相关阅读:
    python 生成随机数、生成 uuid
    python django 之 django自带的分页
    python django 之 django自定制分页
    禁止用户使用 sudo su 命令进入root 模式
    MySQL学习之路 一 : MySQL 5.7.19 源码安装
    Ubuntu 16.04 apt 国内源
    Python开发(三):字符编码,文件操作,函数
    如何装双系统详细步骤:以win10+centos为例
    中缀表达式转换成后缀表达式
    getch()、getche()和getchar()函数
  • 原文地址:https://www.cnblogs.com/jacky1982/p/7824349.html
Copyright © 2020-2023  润新知