• Linux常用命令之文件压缩与解压缩命令详解


    今天我们继续为大家带来Linux常用命令的文件压缩解压命令。在Linux中,制作压缩包或者解压是我们日后最常见的日常文件操作了。在Linux系统中,压缩解压命令其实并不难,但是里面有一些细节是需要我们注意的。Linux压缩格式有很多中,我们掌握好常见的几种压缩格式就足够了。

    1、gzip 压缩命令解释

    • 命令名称:gzip
    • 命令英文:GNU zip
    • 命令所在路径: /bin/gzip
    • 执行权限:所有用户
    • 命令功能:压缩文件
    • 语法:gzip 选项[文件]
    • 压缩后文件格式:.gz

    .gz格式我们比较常见,比如在系统里面按照软件包的时候,很多都是这个格式。

    使用举例

    比如我们test目录下有个 file3的文件,将其压缩成 .gz 格式:

    $ gzip file3

    image

    可以看到,在目录中立马生成了一个 file3.gz 的压缩包文件,但是源文件 file3 不见了。gzip 命令有几点大家要记住:

    1. 它只能压缩文件,不能压缩目录
    2. 不保留源文件

    我们要解压缩 .gz 的文件,可以使用 -d 参数:

    $ gzip -d file3.gz

    image

    解压 .gz文件我们还有个专门的命令: gunzip

    2、gunzip 解压.gz格式命令解释

    • 命令名称:gunzip
    • 命令英文:GNU unzip
    • 命令所在路径: /bin/gunzip
    • 执行权限:所有用户
    • 命令功能:解压.gz的压缩包文件
    • 语法:gunzip 选项[压缩文件]

    使用举例

    接上一个例子,我们解压 file3.gz文件:

    $ gunzip file3.gz

    image

    解压出来之后,压缩包源文件同样没有保留了。

    既然 gzip 不能压缩目录,那么自然有另外一个命令 tar可以用来压缩目录。

    3、tar 压缩命令解释

    • 命令名称:tar
    • 命令所在路径: /bin/tar
    • 执行权限:所有用户
    • 命令功能:打包目录
    • 压缩后文件格式:.tar.gz
    • 语法:tar 选项[cvf] [目录]
      • -c 产生.tar打包文件
      • -v 显示详细信息
      • -f 指定压缩后的文件名
      • -z 打包同时压缩

    使用举例

    比如我目录下面有个test2的目录,现在要打包并压缩成.tar.gz文件:

    $ tar -zcf test2.tar.gz test2
    大家注意,我们要先指定文件名,再指定要打包的目录,而且打包完成之后,源文件还在。

    image

    解压 .tar.gz 文件

    • 语法:tar 选项[xvf] [压缩包文件]
      • -x 解包.tar文件
      • -v 显示详细信息
      • -f 指定解压的文件
      • -z 解压缩

    $ tar -zxf test2.tar.gz

    4、zip 压缩命令解释

    • 命令名称:zip
    • 命令所在路径: /usr/bin/zip
    • 执行权限:所有用户
    • 命令功能:压缩文件或目录
    • 压缩后文件格式:.zip
    • 语法:zip 选项[-r] [压缩后的文件名称] [文件或目录]

    使用举例

    • 比如我test/目录下面有个 file3文件,想压缩成 me.zip文件到/mnt目录:

    $ zip /mnt/me.zip file3

    image

    可以看到,执行命令之后,在我的/mnt目录生成了一个me.zip文件,注意:zip命令也会保留源文件。

    • 压缩目录:压缩目录和压缩文件差不多,只是多了一个 -r 参数。

    $ zip -r test.zip test

    image

    提示:.zip 格式是默认windows系统和Linux系统唯一通用的格式。

    5、unzip 解压缩命令解释

    • 命令名称:unzip
    • 命令所在路径: /usr/bin/unzip
    • 执行权限:所有用户
    • 命令功能:解压.zip格式的压缩文件
    • 语法:unzip [选项] [压缩文件名称]

    使用举例

    • 比如把我们刚才生成的me.zip文件解压:

    $ unzip me.zip
    image

    • 把我们刚才生成的test.zip 文件解压:

    $ unzip test.zip

    image

    大家可以注意到,执行命令之后,在命令行提示是否覆盖已有的文件,我们根据自己的需要输入即可。有的同学就问,我不想要它提示,只要出现同名的文件就自动覆盖,该如何执行呢?我们加一个 -o 的参数即可:

    unzip -o test.zip

    6、bzip2 解压缩命令解释

    • 命令名称:bzip2
    • 命令所在路径: /usr/bin/bzip2
    • 执行权限:所有用户
    • 命令功能:压缩文件
    • 压缩后文件格式:.bz2
    • 语法:bzip2 [选项]-k [文件]
      • -k 产生压缩文件后保留原文件

    其实大家可以理解bzip2gzip是升级版,因为他和gzip差不多,也只能压缩文件,不过多了一个选项-k 是否保留原文件,而且它的压缩比很高,因此比较适合压缩大型的文件。

    使用举例

    比如把当前目录下的file3文件压缩成 .bz2文件,并且保留原文件:

    $ bzip2 -k file3

    image

    7、bunzip2 解压缩命令解释

    • 命令名称:bunzip2
    • 命令所在路径: /usr/bin/bunzip2
    • 执行权限:所有用户
    • 命令功能:压缩bz2文件
    • 语法:bunzip2 [选项]-k [压缩文件]
      • -k 产生压缩文件后保留原文件

    使用举例

    比如把当前目录下的file3.bz2压缩包解压,并且保留原压缩文件:

    $ bunzip2 -k file3.bz2

    今天我们学习了在Linux系统中如何压缩和解压缩文件,总体来说,我们只要掌握.gz.tar.gz.zip.bz2这四种格式压缩和解压缩就可以了。

    image

  • 相关阅读:
    php使用redis锁
    php接收json数据
    计算机中的二进制、八进制、十进制、十六进制
    mysql8导入myslq5 报错
    如何用最简单的方式解释依赖注入?依赖注入是如何实现解耦的?(通俗易懂)
    【运维】Linux进阶命令简记--Linux(3)
    springboot项目在docker容器中如何优雅关闭
    springboot项目接入sap与部署到docker遇到的问题实录
    如何解决springboot参数传中文乱码
    maven如何动态统一修改版本号
  • 原文地址:https://www.cnblogs.com/jiupai-Linux/p/13446564.html
Copyright © 2020-2023  润新知