如何在 Linux 中使用 gzip 命令
gzip
是一个命令行实用程序,允许我们创建和提取 .gz
档案。gzip
命令为每个文件创建一个压缩文件。如果我们想把多个文件或一个目录压缩成一个压缩文件,我们需要使用 tar
命令创建一个 .tar
档案,然后使用 gzip
命令压缩 .tar
档案。使用 gzip
命令压缩音频文件、图像文件和其他二进制文件不是特别推荐,因为它们已经被压缩了。
gzip
语法
gzip [OPTION]... [FILE]...
[FILE]...
代表要压缩的文件,[OPTION]...
代表自定义压缩或解压过程的选项。
使用 gzip
压缩文件
使用 gzip
压缩文件的命令是
gzip filename
这将使用 gzip
将 filename
压缩成 filename.gzip
并删除原始文件。
如果我们想保留原来的文件,我们使用命令中的 -k
选项。
gzip -k main.py
它将文件 main.py
压缩成 main.py.gz
并保留原文件。
另一种保留原始文件的方法是使用 -c
选项,它引导 gzip
命令将输出写在标准输出上,我们将标准输出重定向到 .gzip
文件。
gzip -c main.py > main.py.gz
同时,它还通过保留原文件,将 main.py
文件压缩成 main.py.gz
。
为了得到详细的输出,我们使用 -v
选项。
gzip -v main.py
输出:
main.py: 18.6% -- replaced with main.py.gz
从输出结果中,我们可以看到压缩过程中文件大小减少的百分比。
使用 gzip
一次压缩多个文件
要使用 gzip
一次压缩多个文件,我们使用 gzip
命令,后面用空格隔开要压缩的文件名。
gzip main.py file.py process.py
它将文件 main.py
、file.py
和 process.py
压缩成各自的 .gz
文件,分别为 main.py.gz
、file.py.gz
和 process.py.gz
。
使用 gzip
压缩一个目录内的所有文件
要使用 gzip
压缩一个目录内的所有文件,我们使用 gzip
命令的 -r
选项。
gzip -r test_dir
它将 test_dir
内的每一个单独的文件压缩成各自的压缩文件,以 .gz
结尾。
使用 gzip
解压文件
要使用 gzip
解压 .gz
文件,我们使用 gzip
命令的 -d
选项。
gzip -d filename.gz
它使用 gzip
将 filename.gz
解压成 filename
并删除压缩后的文件。
我们也可以用 gunzip
命令解压 .gz
文件。
gunzip main.py.gz
它用 gzip
将 main.py.gz
解压成 main.py
,并删除压缩后的文件 main.py.gz
。
如果我们想在解压过程中也保留压缩文件,我们可以使用命令中的 -k
选项。
gzip -dk main.py.gz
它通过保留解压后的文件,将文件 main.py.gz
解压成 main.py
。
使用 gzip
一次解压多个文件
要使用 gzip
一次压缩多个文件,我们使用 gzip
命令,在 -d
选项后加上要解压的文件名,并以空格分隔。
gzip -d main.py.gz file.py.gz process.py.gz
它将 main.py.gz
、file.py.gz
和 process.py.gz
文件解压成 main.py
、file.py
和 process.py
三个文件。
使用 gzip
解压一个目录内的所有文件
要使用 gzip
解压一个目录内的所有文件,我们使用 gzip
命令中的 -r
选项和 -d
选项。
gzip -dr test_dir
它将 test_dir
内的每一个单独的压缩文件解压成各自的解压文件。
使用 gzip
命令列出压缩文件的详细信息
当使用 -l
选项时,gzip
命令也可以用来获取压缩文件的详细信息。
gzip -l main.py.gz
输出:
compressed uncompressed ratio uncompressed_name
28 0 0.0% main.py
它列出了所有关于 main.py.gz
文件的细节。
为了获得更多的细节,我们添加 -v
选项。
gzip -l main.py.gz
输出:
method crc date time compressed uncompressed ratio uncompressed_name
defla 00000000 Sep 8 22:15 28 0 0.0% main.py
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn