1.命令作用
解压缩文件(uncompress FILEs);一般时解压缩使用gzip 命令压缩过的文件,gzip压缩文件默认以.gz为后缀,gunzip 实质是gzip -d 的硬链接,也可以使用gzip -d进行解压。
2.命令语法
Usage: gunzip [OPTION]... [FILE]...
3.参数详解
OPTION:
- -c, --stdout,默认写入到标准输出,原始文件保持不变不会被删除;可以使用覆盖重定向或者追加重定向解压缩成指定的文件里,追加定向解压缩会将文件内容重复追加
- -f, --force,如果解压后的文件已经存在,则不提示是否覆盖,直接强制覆盖输出文件和压缩链接
- -l, --list,列出压缩文件基本信息;包括压缩后大小,未压缩大小,压缩比及源文件名称
- -n, --no-name,解压文件时,不保存原来的文件名称及时间戳
- -N, --name,解压文件时,保存原来的文件名称及时间戳(默认行为)
- -q, --quiet,抑制所有警告
- -r, --recursive,对目录进行递归压缩操作,注意不是将整个目录压缩为一个文件,是将目录下所有文件分别进行压缩,-dr可以对应递归解压
- -S, --suffix=SUF,指定压缩后文件名称的后缀为SUF,对应解压时也需要指定该能解压
- -t, --test,测试检测压缩文件的完整
- -v, --verbose,详细模式
- -V, --version,展示版本号,实质时gzip命令的版本号
- --rsyncable,解压适合rsync的gzip归档
4.常用用例
4.1.查看压缩文件相关信息
## 包括压缩后文件大小、压缩前文件大小、压缩比、原文件名称
[root@node2 Desktop]# gunzip -l file1.txt.gz
compressed uncompressed ratio uncompressed_name
47 56 66.1% file1.txt
[root@node2 Desktop]#
4.2.常规解压
## 解压默认不会保留gzip压缩文件
[root@node2 Desktop]# ll
total 4
-rw-r--r--. 1 root root 47 Mar 9 16:48 file1.txt.gz
[root@node2 Desktop]# gunzip file1.txt.gz
[root@node2 Desktop]# ll
total 4
-rw-r--r--. 1 root root 56 Mar 9 16:48 file1.txt
[root@node2 Desktop]#
4.3.归档解压
## 递归解压目录下所有的gzip压缩文件
[root@node2 Desktop]# tree dir1/
dir1/
├── dir2
│ ├── file1.txt.gz
│ └── file2.txt.gz
├── file1.txt.gz
└── file2.txt.gz
1 directory, 4 files
[root@node2 Desktop]# gunzip -r dir1/
[root@node2 Desktop]# tree dir1/
dir1/
├── dir2
│ ├── file1.txt
│ └── file2.txt
├── file1.txt
└── file2.txt
1 directory, 4 files
[root@node2 Desktop]#
4.4.解压不删除压缩原文件
## -c参数需要与重定向符号>或者>>结合使用,会保留压缩文件
[root@node2 Desktop]# ll
total 4
-rw-r--r--. 1 root root 47 Mar 9 16:48 file1.txt.gz
[root@node2 Desktop]# gunzip -c file1.txt.gz > file1.txt
[root@node2 Desktop]# ll
total 8
-rw-r--r--. 1 root root 56 Mar 9 18:03 file1.txt
-rw-r--r--. 1 root root 47 Mar 9 16:48 file1.txt.gz
[root@node2 Desktop]#
4.5.指定压缩后缀解压
## 压缩文件后缀为.gzip,那么解压缩时,需要指定后缀名才能正常解压,不指定后缀解压会报错
[root@node2 Desktop]# ll
total 4
-rw-r--r--. 1 root root 47 Mar 9 18:03 file1.txt.gzip
[root@node2 Desktop]#
[root@node2 Desktop]# gunzip file1.txt.gzip
gzip: file1.txt.gzip: unknown suffix -- ignored
[root@node2 Desktop]#
[root@node2 Desktop]# gunzip -S .gzip file1.txt.gzip
[root@node2 Desktop]#
[root@node2 Desktop]# ll
total 4
-rw-r--r--. 1 root root 56 Mar 9 18:03 file1.txt
[root@node2 Desktop]#