gzip工具
gzip采用了最流行的压缩算法,可以让你缩小文件的大小,并且保留原始的文件模式,属主和时间戳。
使用gzip工具压缩的文件一般使用.gz的文件名后缀,并且gzip也可以用来解压缩文件。
命令格式以及说明
通常的语法格式如下:
1 | gzip [可选项] ... [文件]... |
gzip只能压缩单个文件,并为给定的文件创建一个压缩之后的文件。根据惯例,压缩之后的文件的命令一把使用.gz
或者.z
。
如果你想将多个文件或者目录压缩到一个文件中,首先你需要创建一个tar包,然后对这个tar包进行压缩。这样的文件一般会使用.tar.gz
或者.tgz
作为后缀来表明这个文件是使用了gzip压缩之后的tar包。
gzip最常用作压缩文本文件,tar包或者网页,尽量不要使用gzip去压缩图片,音频,pdf文档或者其他的二进制文件,因为他们已经被压缩过了。
gzip只能压缩常规文件,符号链接文件会被忽略。
使用gzip压缩文件
- 不带任何参数的压缩该命令将会创建一个
1
gzip 你的文件
你的文件.gz
文件,然后删除原始文件。
默认情况下,gzip会保留原始文件的时间戳,模式,属主和文件名。 - 保留原始文件另外一种保留原始文件的方法是使用
1
gzip -k 你的文件
-c
选项,告诉gzip将原始文件写入到标准输出,然后重定向到指定的文件1
gzip -c 你的文件 > 你的文件.gz
- 查看冗余信息该命令将会输出压缩进度信息
1
gzip -v 你的文件
- 压缩多个文件该命令将会生成
1
gzip 文件1 文件2 文件3
文件1.gz
、文件2.gz
、文件3.gz
这3个文件。 - 压缩目录该命令会递归压缩你的目录下的所有文件,分别生成
1
gzip -r 你的目录
.gz
文件。 - 改变压缩等级
gzip允许我们指定文件的压缩等级,范围是1-9,而-1
或者--fast
则代表使用最小的压缩率以达到最快的压缩速度;而-9
或者--best
则代表使用最高的压缩率,相应的,也会有最慢的压缩速度。默认的压缩级别是6;压缩是CPU密集型的任务,压缩等级越高,压缩过程越长。1
gzip -9 你的文件
- 使用标准输入
为了从标准输入创建.gz
文件,使用管道命令重定向到gzip。该命令将会把1
mysqldump database_name | gzip -c > database_name.sql.gz
mysqldump
的输出内容作为输入传递给gzip。
使用gzip解压缩
- 使用-d作为解压缩选项另一个可以用于解压缩的命令是gunzip,它可以算作是gzip -d的别名。
1
gzip -d 你的文件.gz
1
gunzip 你的文件.gz
- 保留原始压缩文件
1
gzip -dk 你的文件.gz
- 解压缩多个文件
1
gzip -d 你的文件1.gz 你的文件2.gz 你的文件3.gz
- 解压缩目录下的所有压缩文件
1
gzip -dr 你的目录
- 查看压缩文件的内容使用
1
gzip -l 你的文件
-v
可以得到更加详细的信息。