linux压缩命令的使用

1.压缩的概念

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

  2. 压缩的类型
    有损压缩、无损压缩。
    a)有损压缩:
    如mp4视频文件,即使压缩过程中,减少了很多帧的数据,
    对观看者而言,也没有影响。当然mp3音乐文件也是有损压缩。
    b)无损压缩:
    如普通文件的压缩,为了保证信息的正确传递,
    不希望文件经过压缩或解压后,出现问题。

2.linux下常用的压缩命令

小结:
单个文件的压缩(解压)使用gzip 和bzip2
多个文件和目录使用tar

gzip

gzip的常用选项
-l(list) 列出压缩文件的内容
-k(keep) 在压缩或解压时,保留输入文件。
-d(decompress) 将压缩文件进行解压缩

1)查看

gzip  -l 压缩文件名
比如:gzip -l pwd.1.gz

2)解压

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

3)压缩

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

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

2)相同的文件内容,如果文件名不同,压缩后的大小也不同。

3)gzip只能压缩单个文件,不能压缩目录。

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

bzip

bzip2来压缩单个文件
bzip2的常用选项
-k(keep) 在压缩或解压时,保留输入文件。
-d(decompress) 将压缩文件进行解压缩

1)压缩

bzip2  -k  源文件名
比如:bzip2 -k mypwd.1
得到一个.bz2后缀的压缩文件

2)解压

bzip2  -kd  压缩文件名
bzip2 -kd mypwd.1.bz2    

注意:
1)如果bzip2不加任何选项,此时为压缩,压缩完该文件会生成后缀为.bz2的压缩文件,
并删除原有的文件,所以说,推荐使用bzip2 -k 来压缩源文件。
2)bzip2只能压缩单个文件,不能压缩目录。

单个文件的压缩使用gzip或bzip2,
压缩有两个参数:1)压缩时间 2)压缩比
一般情况下,小文件使用gzip来压缩,大文件使用bzip2来压缩。
mypwd.1源大小是1477字节,
gzip压缩后mypwd.1.gz是877字节,
bzip2压缩后mypwd.1.bz2是939字节。
myls.1源文件大小7664字节,
gzip压缩后myls.1.gz是3144字节,
bzip2压缩后myls.1.bz2是3070字节。

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


   转载规则


《linux压缩命令的使用》 Mr.Pan 采用 知识共享署名 4.0 国际许可协议 进行许可。
  目录