📜  Linux 中的 Gzip 命令

📅  最后修改于: 2022-05-13 01:57:27.691000             🧑  作者: Mango

Linux 中的 Gzip 命令

gzip 命令压缩文件。每个单个文件都被压缩成一个文件。压缩文件由 GNU zip 标头和压缩数据组成。
如果给定一个文件作为参数,gzip 会压缩该文件,添加“.gz”后缀,并删除原始文件。在没有参数的情况下,gzip 压缩标准输入并将压缩文件写入标准输出。
Unix 中 Gzip 和 zip 命令的区别以及何时使用哪个命令

  • ZIP 和 GZIP 是两种非常流行的文件压缩方法,以节省空间或减少通过网络或 Internet 传输文件所需的时间。
  • 一般来说,在压缩方面,GZIP 比 ZIP 好得多,尤其是在压缩大量文件时。
  • GZIP 的常见做法是在压缩之前将所有文件存档到一个 tarball 中。在 ZIP 文件中,单个文件被压缩,然后添加到存档中。
  • 当您想从 ZIP 中提取单个文件时,只需将其解压缩,然后解压缩即可。使用 GZIP,需要先解压缩整个文件,然后才能从存档中提取所需的文件。
  • 从 10GB 存档中提取 1MB 文件时,很明显 GZIP 比 ZIP 需要更长的时间。
  • GZIP 在运作方式上的劣势,也是 GZIP 的优势所在。由于 GZIP 中的压缩算法压缩一个大文件而不是多个小文件,因此它可以利用文件中的冗余来进一步减小文件大小。
  • 如果您使用 ZIP 和 GZIP 归档和压缩 10 个相同的文件,则 ZIP 文件将比生成的 GZIP 文件大 10 倍以上。


句法 :

gzip [Options] [filenames]


例子:

$ gzip mydoc.txt

该命令将创建一个名为 mydoc.txt.gz 的 mydoc.txt 压缩文件并删除原始文件。

选项 :



  1. -f 选项:有时无法压缩文件。也许您正在尝试压缩一个名为“myfile1”的文件,但已经有一个名为“myfile1.gz”的文件。在这种情况下,“gzip”命令通常不起作用。
    要强制“gzip”命令执行其操作,只需使用 -f 选项:
    $ gzip -f myfile1.txt


    即使已经存在名为 myfile.txt.gz 的文件,这也会强制压缩名为 myfile.txt 的文件

  2. -k 选项:默认情况下,当您使用“gzip”命令压缩文件时,您最终会得到一个扩展名为“.gz”的新文件。如果您想压缩文件并保留原始文件,您必须运行 gzip带 -k 选项的命令:
    $ gzip -k mydoc.txt


    上面的命令最终会生成一个名为“mydoc.txt.gz”和“mydoc.txt”的文件。
  3. -L 选项:此选项显示 gzip 许可证。
    $ gzip -L filename.gz


    输出 :
    Apple gzip 264.50.1 (based on FreeBSD gzip 20111009)
    Copyright (c) 1997, 1998, 2003, 2004, 2006 Matthew R. Green
    All rights reserved.
  4. -r 选项:此选项可以压缩文件夹及其子文件夹中的每个文件。此选项不会创建名为 foldername.gz 的文件。相反,它遍历目录结构并压缩该文件夹结构中的每个文件。
    gzip -r testfolder


    这将压缩 testfolder 中存在的所有文件。
  5. -[1-9] 选项:它允许更改压缩级别。可以以不同方式压缩文件。例如,您可以选择较小的压缩,这样可以更快地工作,或者您可以选择最大的压缩,这会在运行时间更长的情况下进行权衡。速度和压缩级别可以使用 1 到 9 之间的数字因级别而异。
    $ gzip -1 mydoc.txt


    这将以最慢的速度获得最大的压缩
    $ gzip -9 mydoc.txt


    以最快的速度获得最小的压缩
  6. -v 选项:此选项显示压缩或解压缩的每个文件的名称和减少百分比。
    $ gzip -v mydoc.txt


    输出 :
    new.txt:       18.2% -- replaced with new.txt.gz
  7. -d 选项:此选项允许使用“gzip”命令解压缩文件。
    $ gzip -d mydoc.txt.gz


    此命令将解压缩名为 mydoc.txt.gz 的压缩文件。