Gzip是最流行的压缩算法之一,它允许您减小文件的大小并保持原始文件的权限,所有权和时间戳。
Gzip也指.gz文件格式和gzip命令,用于压缩和解压.gz文件。在本教程中,我们将向您展示如何使用gzip命令。
gzip命令语法以及常见选项的解释,在解/压缩文件时保留原始文件,查看压缩进度,压缩一个或者多个文件与目录。
gzip命令的语法形式是gzip [OPTION]... [FILE]...。OPTIONgzip命令的选项,是可选参数,[FILE]一个或者多个文件,可选参数。
gzip命令仅压缩单个文件,并为每个指定文件创建一个压缩文件。按照约定,使用gzip命令压缩的文件的名称都应以.gz或.z结尾。
如果要将多个文件或目录压缩到一个gz文件,请先创建tar存档文件,然后使用gzip命令压缩.tar文件。按照约定,使用gzip命令压缩的tar存档文件以.tar.gz或.tgz结尾。
gzip最常用于压缩文本文件,tar存档和网页。不要使用gzip压缩图像,音频,PDF文档和其他二进制文件,因为它们已经被压缩。Gzip只能压缩普通文件,符号链接将会被忽略。
要压缩单个文件,请运行gzip命令后跟文件名。gzip命令将创建filename.gz文件并删除原始文件filename。
如果你需要保留原始文件,可以使用gzip命令的-k选项。例如命令gzip -k filename不会删除文件filename。
保留原始文件另一个选项是使用gzip命令的-c选项,-c选项将压缩文件写到标准输出,可以将-c选项的标准输出重定向到文件创建压缩文件gz。
gzip filename
gzip -k filename
gzip -c filename > filename.gz
您也可以将多个文件作为参数传递给gzip命令。当传递多个文件给gzip命令时,gzip命令并不会将多个文件存放一个压缩文件中。
正如引言所提到的那样,gzip命令只会压缩一个文件,gzip命令会创建多个gz文件。
例如命令gzip file1 file2 file3将会要压缩文件file1,file2,file3并创建三个压缩文件file1.gz,file2.gz,file3.gz。
gzip file1 file2 file3
gzip命令仅可以压缩单个文件,如果你尝试使用gzip命令压缩目录,gzip命令将会打印消息gzip: ssh-8w1J5Qs9sIIr is a directory -- ignored。
要压缩指定目录的所有文件,请使用gzip命令-r选项。gzip命令将递归遍历所有文件并压缩。
gzip命令压缩目录和压缩多个文件的结果一样,会目录内的每个文件创建一个压缩文件。
gzip -r directory
gzip命令允许您指定1到9的压缩级别。-1或--fast表示使用最快的压缩速度,但压缩比最小。
-9或--best表示最慢的压缩速度,但压缩率是最大的。默认压缩级别为-6。压缩是一项占用大量CPU的任务,压缩级别越高,花费的时间就越长。
例如命令gzip -9 filename以最大的压缩级别压缩文件filename。
gzip -9 filename
gzip命令除了可以压缩文件之外,还可以压缩标准输入。使你一边导出数据一边进行压缩。
要使用gzip命令压缩标准输入并创建.gz文件,可以将另一个命令的标准输出通过管道传递到gzip命令。
例如命令mysqldump database_name | gzip -c > database_name.sql.gz将mysqldump命令的标准输出通过管道传递到gzip命令创建MySQL数据库备份。
mysqldump database_name | gzip -c > database_name.sql.gz
gzip命令的-d选项可以解压.gz文件。gzip命令在解压完成后,将会删除原始的压缩文件。如果你需要保留压缩文件,请使用gzip命令的-k选项解压文件。
另一个可用于解压.gz文件的命令是gunzip。gunzip命令实质是命令gzip -d的别名。
要使用gunzip命令解压.gz文件,只需将文件名传递给gunzip命令,gunzip默认不会删除原始压缩文件。例如命令gunzip file.gz。
要一次解压缩多个文件,请将多个文件名以空格分隔作为参数传递给gzip。
如果您使用的是GUI环境,而不是命令行,则可以使用文件管理器。打开或者解压.gz文件,请右键单击要解压缩的文件,然后选择提取。
gzip -dk file.gz
gunzip file.gz
gzip -dk file1.gz file2.gz file3.gz
gzip命令的-d选项可以解压.gz文件,-r选项可以递归遍历目录所有压缩文件。当两个组合在一起就可以递归解压指定目录压缩文件
例如命令gzip -dr directory将会解压directory目录压缩文件。如果你需要保留压缩文件,请添加-k选项。
gzip -dr directory
与-l选项一起使用时,gzip显示指定压缩文件的统计信息。输出将包括未压缩的文件名,压缩和未压缩的大小以及压缩率。
要获取更多信息,请组合使用gzip命令的-v选项。例如命令gzip -lv filename。
gzip -l filename
gzip -lv filename
method crc date time compressed uncompressed ratio uncompressed_name
defla 00000000 Dec 2 17:29 26 0 0.0% file2
使用Gzip,您可以缩小文件的大小。gzip命令允许您压缩和解压文件。gzip命令的更多信息,请参阅Gnu gzip文档页面。