6.2-gzip压缩工具

gzip压缩工具,可以压缩文件,不能压缩目录

快速生成一个大文件

[root@evan-01 ~]# dd if=/dev/zero of=/home/evan1/big.txt bs=1M count=200         
200+0 records in
200+0 records out
209715200 bytes (210 MB) copied, 1.16603 s, 180 MB/s
[root@evan-01 ~]# du -sh /home/evan1/big.txt 
200M    /home/evan1/big.txt
[root@evan-01 ~]# 

压缩文件
压缩

[root@evan-01 ~]# cd /home/evan1
[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]# gzip big.txt
[root@evan-01 evan1]# ll
total 200
-rw-r--r--. 1 root root 203555 Aug 21 11:50 big.txt.gz
[root@evan-01 evan1]#

看下压缩后的大小

[root@evan-01 evan1]# du -sh big.txt.gz 
200K    big.txt.gz
[root@evan-01 evan1]# 

压缩后发现文件变得小了,才200k

-d 解压文件
解压

[root@evan-01 evan1]# gzip -d big.txt.gz 
[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]#

解压后原来的 big.txt 文件又回来了

看下解压后的大小

[root@evan-01 evan1]# du -sh big.txt 
200M    big.txt
[root@evan-01 evan1]#

还是原来的大小 200M

-# 指定压缩级(1~9,默认是6)

[root@evan-01 evan1]# gzip -1 big.txt 
[root@evan-01 evan1]# du -sh big.txt.gz 
896K    big.txt.gz
[root@evan-01 evan1]# 

对比前面的大小,发现压缩级别低的话,压缩出来的文件就相对来说比较大些。一般我们都使用默认级别,默认级别为 6。压缩级别过大,耗费cpu资源就会比较大

另一种解压方法
gunzip filename

[root@evan-01 evan1]# gunzip big.txt.gz 
[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]# 

再压缩一次,级别选择9

[root@evan-01 evan1]# gzip -9 big.txt 
[root@evan-01 evan1]# du -sh big.txt.gz 
200K    big.txt.gz
[root@evan-01 evan1]# 

发现压缩级别 9 的和第一次默认压缩级别压缩出来的大小是一样的。
压缩到一定级别后,就不再往下压缩了

压缩后的文件的查看
压缩后的文件是一个二进制的文件,没办法进行直接查看,查看方式 zcat filename

[root@evan-01 evan1]# zcat big.txt.gz

指定目录压缩
这种压缩压缩前的文件和压缩后的文件可以同时存在

先解压

[root@evan-01 evan1]# ll
total 200
-rw-r--r--. 1 root root 203555 Aug 21 11:50 big.txt.gz
[root@evan-01 evan1]# gzip -d big.txt.gz 
[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]# 

压缩

[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]# gzip -c big.txt > /home/evan2/big.tar.gz
[root@evan-01 evan1]# ll
total 204800
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]# ll /home/evan2/big.tar.gz 
-rw-r--r--. 1 root root 203555 Aug 21 14:28 /home/evan2/big.tar.gz
[root@evan-01 evan1]# 

指定目录解压文件
这种解压前的文件和解压后的文件可以同时存在

解压

[root@evan-01 evan1]# gzip -d -c /home/evan2/big.tar.gz > /home/evan1/big2.txt
[root@evan-01 evan1]# ll
total 409600
-rw-r--r--. 1 root root 209715200 Aug 21 14:30 big2.txt
-rw-r--r--. 1 root root 209715200 Aug 21 11:50 big.txt
[root@evan-01 evan1]#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值