Linux压缩命令gzip, bzip2和tar

作者:曾Jerry 或 大橙员, 250359225@qq.com

压缩的目的

  • 在网络传递文件时,可以先将文件压缩,然后传递压缩后的文件,从而减少网络带宽
  • 接受者接受文件后,解压即可

Linux常见的压缩命令有gzip, bzip2tar

gzip

gzip压缩文件名一般以.gz结尾

gzip常用选项:

  • -l(list):列出压缩文件的内容
  • -k(keep):在压缩或解压时,保留输入文件
  • -d(decompress):将压缩文件进行解压缩

1)查看
gzip -l 压缩文件名

比如:gzip -l pwd.1.gz

$ cp /usr/share/man/man1/pwd.1.gz .
$ gzip -l pwd.1.gz 
         compressed        uncompressed  ratio uncompressed_name
                869                1476  42.3% pwd.1

2)解压
gzip -kd 压缩文件名
比如:gzip -kd pwd.1.gz
该压缩文件是以.gz结尾的单个文件

$ gzip -kd pwd.1.gz 
$ ls
pwd.1  pwd.1.gz

3)压缩
gzip -k 源文件名
比如:gzip -k mypwd.1
得到了一个.gz结尾的压缩文件 mypwd.1.gz

$ gzip -k mypwd.1 
book@100ask:~/Desktop$ ls
mypwd.1  mypwd.1.gz  pwd.1  pwd.1.gz

注意:
1)如果gzip不加任何选项,此时为压缩,压缩完该文件会生成后缀为.gz的压缩文件,并删除原有的文件,所以说,推荐使用 gzip -k 来压缩源文件

2)相同的文件内容,如果文件名不同,压缩后的大小也不同
在这里插入图片描述
3)gzip只能压缩单个文件,不能压缩目录
在这里插入图片描述
但gzip能够连续压缩多个的文件, 这和上面的表达没有冲突:
在这里插入图片描述

提示: man pwd会解压/usr/share/man/man1/pwd.1.gz这个文件,
然后读取该文件中固定的格式的一些信息,然后显示到终端中

bzip2

bzip2的常用选项:

  • -k(keep) 在压缩或解压时,保留输入文件。
  • -d(decompress) 将压缩文件进行解压缩

1)压缩
bzip2 -k 源文件名
比如:bzip2 -k pwd.1, 得到一个.bz2后缀的压缩文件
在这里插入图片描述
2)解压
bzip2 -kd 压缩文件名
比如 bzip2 -kd pwd.1.bz2
在这里插入图片描述
注意:
1)如果bzip2不加任何选项,此时为压缩,压缩完该文件会生成后缀为.bz2的压缩文件,并删除原有的文件,所以说,推荐使用bzip2 -k 来压缩源文件

2)bzip2只能压缩单个文件,不能压缩目录
在这里插入图片描述
但bzip2能够连续压缩多个的文件, 这和上面的表达没有冲突:
在这里插入图片描述

单个文件的压缩使用gzip或bzip2的对比:

tar

gzip、bizp2只能对一个文件进行压缩,而不能对多个文件和目录进行压缩。
所以需要tar来对多个目录、文件进行打包和压缩。

tar常用选项:

  • -c(create) 表示创建用来生成文件包
  • -x:表示提取,从文件包中提取文件
  • -t可以查看压缩的文件
  • -z使用gzip方式进行处理,它与”c“结合就表示压缩,与”x“结合就表示解压缩
  • -j使用bzip2方式进行处理,它与”c“结合就表示压缩,与”x“结合就表示解压缩
  • -v(verbose)详细报告tar处理的信息
  • -f(file)表示文件,后面接着一个文件名
  • -C <指定目录> 解压到指定目录

1. tar打包、gzip压缩
1)压缩
tar -czvf 压缩文件名 目录名
如:tar czvf dira.tar.gz dira

注意:tar -czvf与tar czvf是一样的效果

2)查看
tar tvf 压缩文件名
如:tar tvf dira.tar.gz

3)解压
tar xzvf 压缩文件名
tar xzvf 压缩文件名 -C 指定目录
如:tar xzvf dira.tar.gz 解压到当前目录
如:tar xzvf dira.tar.gz -C /home/book 解压到/home/book

2. tar打包、bzip2压缩
1)压缩
tar cjvf 压缩文件名 目录名
如:tar cjvf dira.tar.bz2 dira

2)查看
tar tvf 压缩文件名
如:tar tvf dira.tar.bz2

3)解压
tar xjvf 压缩文件名
tar xjvf 压缩文件名 -C 指定目录
如:tar xjvf dira.tar.bz2 解压到当前目录
如:tar xjvf dira.tar.bz2 -C /home/book 解压到/home/book

小结

  • 单个文件的压缩/解压使用gzip 和bzip
  • 多个文件和目录使用tar
  • 小文件一般使用gzip
  • 大文件一般使用bzip2

注:本文参考了韦东山老师的讲解

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值