【Linux】一步一步学Linux——gzip命令(63)

00. 目录

01. 命令概述

gzip命令用来压缩文件。gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处“.gz”扩展名。

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。据统计,gzip命令对文本文件有60%~70%的压缩率。减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。

02. 命令格式

gzip [ -acdfhlLnNrtvV19 ] [-S 后缀] [ 文件名 ...  ]

03. 常用选项

-a或——ascii:使用ASCII文字模式;
-d或--decompress或----uncompress:解开压缩文件;
-f或——force:强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接;
-h或——help:在线帮助;
-l或——list:列出压缩文件的相关信息;
-L或——license:显示版本与版权信息;
-n或--no-name:压缩文件时,不保存原来的文件名称及时间戳记;
-N或——name:压缩文件时,保存原来的文件名称及时间戳记;
-q或——quiet:不显示警告信息;
-r或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理;
-S或<压缩字尾字符串>或----suffix<压缩字尾字符串>:更改压缩字尾字符串;
-t或——test:测试压缩文件是否正确无误;
-v或——verbose:显示指令执行过程;
-V或——version:显示版本信息;
-<压缩效率>:压缩效率是一个介于1~9的数值,预设值为“6”,指定愈大的数值,压缩效率就会愈高;
--best:此参数的效果和指定“-9”参数相同;
--fast:此参数的效果和指定“-1”参数相同。

04. 参考示例

4.1 不保留原文件压缩

[deng@localhost test]$ gzip passwd 
[deng@localhost test]$ ls
etc  passwd.gz
[deng@localhost test]$ 

4.2 保留原文件压缩

[deng@localhost test]$ gzip -c passwd > passwd.gz

4.3 压缩时显示指令执行过程

[deng@localhost test]$ gzip -v passwd 
passwd:  61.0% -- replaced with passwd.gz
[deng@localhost test]$ ls
etc  passwd1.gz  passwd.gz
[deng@localhost test]$ 

4.4 将当前目录下每个文件压缩成 .gz 文件

[deng@localhost test]$ ls
a  b  c  d  e
[deng@localhost test]$ gzip * 
[deng@localhost test]$ ls
a.gz  b.gz  c.gz  d.gz  e.gz
[deng@localhost test]$ 

**注意:**如果是目录,将被忽略。

4.5 解压.gz文件,不保留原文件

[deng@localhost test]$ gzip  -d a.gz  
[deng@localhost test]$ ls
a  b.gz  c.gz  d.gz  e.gz
[deng@localhost test]$ 

4.6 解压当前目录下所有的.gz文件

[deng@localhost test]$ ls
a  b.gz  c.gz  d.gz  e.gz
[deng@localhost test]$ gzip -d *.gz
[deng@localhost test]$ ls
a  b  c  d  e
[deng@localhost test]$ 

4.7 显示压缩文件信息

[deng@localhost test]$ gzip -l *.gz
         compressed        uncompressed  ratio uncompressed_name
                 22                   0   0.0% a
                 22                   0   0.0% b
                 22                   0   0.0% c
                 22                   0   0.0% d
                 22                   0   0.0% e
[deng@localhost test]$ 

4.8 递归的压缩目录

使用 -r 选项,递归压缩 doc 目录以及子目录下的所有文件(目录依然存在)。

[deng@localhost test]$ gzip -rv test/
test//a:    0.0% -- replaced with test//a.gz
test//b:    0.0% -- replaced with test//b.gz
test//c:    0.0% -- replaced with test//c.gz
test//d:    0.0% -- replaced with test//d.gz
test//e:    0.0% -- replaced with test//e.gz
[deng@localhost test]$ tree test
test
├── a.gz
├── b.gz
├── c.gz
├── d.gz
└── e.gz

0 directories, 5 files
[deng@localhost test]$ 

4.9 递归解压目录中文件

[deng@localhost test]$ gzip -d -r test/
[deng@localhost test]$ ls
etc  passwd1.gz  passwd.gz  test
[deng@localhost test]$ tree test
test
├── a
├── b
├── c
├── d
└── e

0 directories, 5 files
[deng@localhost test]$ 

05. 附录

参考:【Linux】一步一步学Linux系列教程汇总

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值