Linux成长之路(四)——文件打包与解压缩

来源:互联网 发布:釉中彩餐具安全吗 知乎 编辑:程序博客网 时间:2024/06/06 07:18

文件打包和解压缩

  • zip压缩打包程序
    在 Windows 上我们最常见的不外乎这三种.zip,.rar,*.7z后缀的压缩文件,而在Linux系统上却还有其他一些压缩文件:
    这里写图片描述

    • 使用zip打包文件夹
      这里写图片描述
      这里-r和前面删除目录中的-r意义一样,表示递归打包,而-q表示表示安静模式,即不显示进度,-o表示输出文件名。
      这里可以看到打包失败,原因是没有提供sudo权限:
      这里写图片描述

    • 设置压缩级别
      1——9:1表示最快但压缩后的体积最大;9最耗时,但压缩率最高。
      这里写图片描述

      也可以用du命令分别查看默认压缩级别、最低、最高压缩级别及未压缩的文件的大小:
      这里写图片描述
      -h表示显示的大小用KB MB GB …来表示,更方便查看。

    • 创建加密zip
      -e用来加密压缩
      这里写图片描述
      打开该.zip文件需要密码:
      这里写图片描述

      注意:关于zip命令,因为 Windows 系统与 Linux/Unix 在文本文件格式上的一些兼容问题,如果你想让你在 Linux 创建的 zip 压缩文件在 Windows 上解压后没有任何问题,那么你还需要对命令做一些修改:
      这里写图片描述

  • 使用unzip命令解压缩
    这里写图片描述
    这里写图片描述

    如果你不想解压只想查看压缩包的内容你可以使用-l参数:
    这里写图片描述

    注意:使用unzip解压文件时我们同样应该注意兼容问题,不过这里我们关心的不再是上面的问题,而是中文编码的问题,通常 Windows 系统上面创建的压缩文件,如果有有包含中文的文档或以中文作为文件名的文件时默认会采用 GBK 或其它编码,而 Linux 上面默认使用的是 UTF-8 编码,如果不加任何处理,直接解压的话可能会出现中文乱码的问题(有时候它会自动帮你处理),为了解决这个问题,我们可以在解压时指定编码类型。
    使用-O(英文字母,大写o)参数指定编码类型:
    这里写图片描述

  • rar打包压缩命令
    这里写图片描述

    实验:先在用户目录下创建一个目录helloDir,里面添加5个txt文本文档,然后将helloDir进行打包到helloDir.rar:
    这里写图片描述

    这里写图片描述

    查看压缩文件:
    这里写图片描述
    注意:rar 的命令参数没有-,如果加上会报错。

    解压:先创建一个目录temp(里面有一个hi.txt)打包进helloDir.rar中:
    这里写图片描述

    这里写图片描述
    然后安装unrar命令,安装好后,先用【rar x】命令解压到xUnRar中:
    这里写图片描述
    再用【rar e】解压到eUnRar中:
    这里写图片描述
    说明:也就是参数x是保持原目录结构,而参数e则是将所有文件直接解压到目标目录中,丢失原目录结构。

  • tar打包工具
    在 Linux 上面更常用的是tar工具,tar 原本只是一个打包工具,只是同时还是实现了对 7z,gzip,xz,bzip2 等工具的支持,这些压缩工具本身只能实现对文件或目录(单独压缩目录中的文件)的压缩,没有实现对文件的打包压缩,所以我们也无需再单独去学习其他几个工具,tar 的解压和压缩都是同一个命令,只需参数不同,使用比较方便。

    • 创建一个tar包【-c】(不会压缩)
      这里写图片描述
      上面命令中,-c表示创建一个 tar 包文件,-f用于指定创建的文件名,注意文件名必须紧跟在-f参数之后。

    • 解包一个文件【-x】到指定路径的已存在目录(【-C】)
      这里写图片描述
      注意:tempDir必须已存在;-C是大写C;

    • 查看包,但不解包【-t】
      这里写图片描述
      注意:【-tf】=【-t -f】

    保留文件属性和跟随链接(符号链接或软链接),有时候我们使用tar备份文件当你在其他主机还原时希望保留文件的属性(-p参数)和备份链接指向的源文件而不是链接本身(-h参数).

    对于创建不同的压缩格式的文件,对于tar来说是相当简单的,需要的只是换一个参数,这里我们就以使用gzip工具创建*.tar.gz文件为例来说明。【-z】命令:
    这里写图片描述

    这里写图片描述

    仍然使用【-x】来解压到已存在的目录中:
    这里写图片描述

    现在我们要使用其他的压缩工具创建或解压相应文件只需要更改一个参数即可:
    这里写图片描述

参考文献:https://www.shiyanlou.com/courses/1
注:转载请注明原文出处:
作者:CUG_UESTC
出处:http://blog.csdn.net/qq_31192383/article/details/53234495

1 0
原创粉丝点击