Linux gzip 压缩/解压 详解

Linux gzip 压缩/解压 详解

gzip 是linux中常见的压缩/解压工具,最常见的使用对象是*.gz格式的文件,这里简单介绍下它最常见的用法,

GZIP(1) General Commands Manual GZIP(1)

NAME

gzip, gunzip, zcat - compress or expand files

SYNOPSIS

gzip [ -acdfhklLnNrtvV19 ] [--rsyncable] [-S suffix] [ name ... ]

gunzip [ -acfhklLnNrtvV ] [-S suffix] [ name ... ]

zcat [ -fhLV ] [ name ... ]

OPTIONS

-c --stdout --to-stdout 结果写到标准输出,原文件保持不变

-d --decompress --uncompress 解压

-k --keep 压缩或者解压过程中,保留原文件

-r --recursive

-t --test 检查压缩文件的完整性

-v --verbose 显示每个文件的名子和压缩率

-# --fast --best 取值从-1(最快)到-9(最好),默认是-6

示例1,压缩文件

原文件名为file1.txt,压缩后原文件消失,压缩后文件名为file1.txt.gz

root@ubuntu:/tmp# ls -l file1.*

-rw-r--r-- 1 root root 12383865 Aug 21 08:08 file1.txt

root@ubuntu:/tmp# gzip file1.txt

root@ubuntu:/tmp# ls -l file1.*

-rw-r--r-- 1 root root 134416 Aug 21 08:08 file1.txt.gz

示例2,解压文件

root@ubuntu:/tmp# gzip -d file1.txt.gz

root@ubuntu:/tmp# ls -lh file1.*

-rw-r--r-- 1 root root 12M Aug 21 08:08 file1.txt

示例3,压缩的时候,显示压缩率

root@ubuntu:/tmp# gzip -v file1.txt

file1.txt: 98.9% -- replaced with file1.txt.gz

示例4,一条命令压缩多个文件,压缩之后,是各自分开的:

root@ubuntu:/tmp# gzip file1.txt file2.txt

root@ubuntu:/tmp# ls -l

total 1348

-rw-r--r-- 1 root root 134416 Aug 21 08:08 file1.txt.gz

-rw-r--r-- 1 root root 392 Aug 21 08:15 file2.txt.gz

示例5,压缩过程中,保留原文件

root@ubuntu:/tmp# gzip -k file1.txt

root@ubuntu:/tmp# ls file1.*

file1.txt file1.txt.gz

示例6,压缩到标准输出中

可以连接两个文件

root@ubuntu:/tmp# cat file1.txt file2.txt | gzip > foo.gz

或者

root@ubuntu:/tmp# gzip -c file1.txt file2.txt > foo.gz

======================================

gzip

压缩后的格式为:*.gz

这种压缩方式不能保存原文件;且不能压缩目录

命令举例:

#压缩

[root@localhost tmp]# gzip buodo

[root@localhost tmp]# ls

buodo.gz

#解压

[root@localhost tmp]# gunzip buodo.gz

[root@localhost tmp]# ls

buodo

tar

命令选项:

-z(gzip) 用gzip来压缩/解压缩文件

-j(bzip2) 用bzip2来压缩/解压缩文件

-v(verbose) 详细报告tar处理的文件信息

-c(create) 创建新的档案文件

-x(extract) 解压缩文件或目录

-f(file) 使用档案文件或设备,这个选项通常是必选的。

命令举例:

#压缩

[root@localhost tmp]# tar -zvcf buodo.tar.gz buodo

[root@localhost tmp]# tar -jvcf buodo.tar.bz2 buodo

#解压

[root@localhost tmp]# tar -zvxf buodo.tar.gz

[root@localhost tmp]# tar -jvxf buodo.tar.bz2

zip

与gzip相比:1)可以压缩目录; 2)可以保留原文件;

选项:

-r(recursive) 递归压缩目录内的所有文件和目录

命令举例:

#压缩和解压文件

[root@localhost tmp]# zip boduo.zip boduo

[root@localhost tmp]# unzip boduo.zip

#压缩和解压目录

[root@localhost tmp]# zip -r Demo.zip Demo

adding: Demo/ (stored 0%)

adding: Demo/Test2/ (stored 0%)

adding: Demo/Test1/ (stored 0%)

adding: Demo/Test1/test4 (stored 0%)

adding: Demo/test3 (stored 0%)

[root@localhost tmp]# unzip Demo.zip

Archive: Demo.zip

creating: Demo/

creating: Demo/Test2/

creating: Demo/Test1/

extracting: Demo/Test1/test4

extracting: Demo/test3

bzip2

压缩后的格式:.bz2

参数

-k 产生压缩文件后保留原文件

命令举例

#压缩

[root@localhost tmp]# bzip2 boduo

[root@localhost tmp]# bzip2 -k boduo

#解压

[root@localhost tmp]# bunzip2 boduo.bz2

相关推荐

没有找到站点
365平台是做什么的

没有找到站点

📅 07-29 👁️ 4839
冰箱响多长时间能停(冰箱才插电嗡嗡响多久才停?)
365bet手机在线投注

冰箱响多长时间能停(冰箱才插电嗡嗡响多久才停?)

📅 07-22 👁️ 1373
轻松掌握:Windows电脑连接WiFi热点的5步攻略,告别网络烦恼!
2025年微信赚钱全攻略:从公众号到小程序,轻松开启财富大门
bet体育365官网正规平台

2025年微信赚钱全攻略:从公众号到小程序,轻松开启财富大门

📅 07-26 👁️ 8335
三种不同的文本图像背景漂白/纯化/去除算法
bet体育365官网正规平台

三种不同的文本图像背景漂白/纯化/去除算法

📅 07-13 👁️ 2405
win7系统如何删除用户账户 win7删除用户账户步骤【图解】
365平台是做什么的

win7系统如何删除用户账户 win7删除用户账户步骤【图解】

📅 07-10 👁️ 4850