搜索
您的当前位置:首页正文

每天一条Linux命令(19) gzip (压缩或解压文件)

来源:吉趣旅游网



语法:

gzip [参数选项] [文件]

参数说明:

  • -d 解开压缩文件

  • -v 显示执行过程

  • -l 列出压缩文件的内容信息

  • -c 将内容输出到标准输出,不改变原始文件

  • -数字 <1~9> 指定压缩率,默认为6,值越大压缩率越高

  • -t 测试,检查压缩文件是否完整

【注】:gzip无论是解压文件还是压缩文件,其结果都会将源文件删除。


案例:

[root@master test02]# ls10.py  1.py  2.py  3.py  4.py  5.py  6.py  7.py  8.py  9.py[root@master test02]# gzip *.py[root@master test02]# ls10.py.gz  1.py.gz  2.py.gz  3.py.gz  4.py.gz  5.py.gz  6.py.gz  7.py.gz  8.py.gz  9.py.gz[root@master test02]# 

不解压 .gz文件 查看压缩文件的信息(都是空文件,所以压缩率均为0.0%)

[root@master test02]# ls10.py.gz  1.py.gz  2.py.gz  3.py.gz  4.py.gz  5.py.gz  6.py.gz  7.py.gz  8.py.gz  9.py.gz[root@master test02]# gzip -l *.gz         compressed        uncompressed  ratio uncompressed_name                196                 172   0.0% 10.py                 25                   0   0.0% 1.py                 25                   0   0.0% 2.py                 25                   0   0.0% 3.py                 25                   0   0.0% 4.py                 25                   0   0.0% 5.py                 25                   0   0.0% 6.py                 25                   0   0.0% 7.py                 25                   0   0.0% 8.py                 25                   0   0.0% 9.py                421                 172 -131.4% (totals)[root@master test02]#

解压文件,并显示解压过程

[root@master test02]# ls10.py.gz  1.py.gz  2.py.gz  3.py.gz  4.py.gz  5.py.gz  6.py.gz  7.py.gz  8.py.gz  9.py.gz[root@master test02]# gzip -dv *.gz10.py.gz:    0.0% -- replaced with 10.py1.py.gz:    0.0% -- replaced with 1.py2.py.gz:    0.0% -- replaced with 2.py3.py.gz:    0.0% -- replaced with 3.py4.py.gz:    0.0% -- replaced with 4.py5.py.gz:    0.0% -- replaced with 5.py6.py.gz:    0.0% -- replaced with 6.py7.py.gz:    0.0% -- replaced with 7.py8.py.gz:    0.0% -- replaced with 8.py9.py.gz:    0.0% -- replaced with 9.py[root@master test02]# ls # 注意源文件没有被保留10.py  1.py  2.py  3.py  4.py  5.py  6.py  7.py  8.py  9.py[root@master test02]# 

经验技巧

由于gzip无论是进行解压还是压缩均会删除源文件,因此我们通过gzip附带的如:zcat、zgrep、zless、zdiff等 命令来实现保留源文件的操作

[root@master test02]# ls10.py  1.py  2.py  3.py  4.py  5.py.gz  6.py  7.py  8.py  9.py[root@master test02]# zcat 5.py.gz > 5.py # 将.gz文件内容重新输出到压缩后的文件中[root@master test02]# ls # 可以发现 5.*文件有两个,源文件保留了下来10.py  1.py  2.py  3.py  4.py  5.py  5.py.gz  6.py  7.py  8.py  9.py[root@master test02]# 

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Top