Linux 文件的压缩解压

  • 压缩 (Compression):将数据文件的大小缩小,从而减少存储或传输时间;

  • 解压 (Decompression):将压缩后的文件恢复到原始文件的过程;

  • 打包(Archiving):将多个文件打包成一个单一文件,单纯打包不会像压缩一样减小文件的大小;

打包

在大多数Linux发行版中,一般使用tar工具来进行打包,打包的同时可以使用特定的格式进行压缩,解包时会保留文件打包压缩前的属性;

https://www.cnblogs.com/heyongshen/p/16366137.html

压缩

除了使用tar打包时可以压缩文件大小外,以下这些常见的工具也能提供压缩功能;

zip

使用zip压缩一个文件时,会生成.zip结尾的文件。

特点:

  1. 压缩但是可能会丢失属性信息,建议用tar代替。

  2. 可以对目录进行压缩,通过加 -r 参数即可实现,解压缩时,使用 -d 参数实现,也可以使用unzip实现。

  3. zip默认是会保留源文件,且压缩的时候需要手动指定压缩后的文件名字。

例如:压缩一个文件

zip devicesystem.conf.zip devicesystem.conf

例如:压缩一个目录

 zip -r apache.zip apache

gzip

gizp是应用最广泛的压缩工具,使用的时gzip这种压缩算法,默认会生成.gz结尾的压缩文件。tar常用的一种压缩方法也是使用gzip算法来进行压缩。

特点:

  1. 默认不会保留源文件,会将文件压缩成 filename.txt.gz,原始的 filename.txt 文件会被替换

  2. 压缩率高,但是压缩速度慢,gzip 本身是设计用来压缩单个文件,不是用来压缩目录文件的

  3. 使用gzip压缩的文件使用 gunzip 来进行解压,也可以使用gzip的 -d 参数解压

gzip常用参数:

  • -c 将压缩数据输出到标准输出中,并保留源文件

  • -d decompress。解压缩,相当于gunzip

  • -k, keep,保留源文件

例如:压缩单个文件
压缩单个文件时候,会自动生成压缩后的文件名,且不会保留源文件;

 gzip generalsystemfe.conf

例如:压缩单个文件且保留源文件

gzip -k  devicesystem.conf

bzip2

使用bzip2压缩文件会生成.bz2结尾的压缩文件。

特点:

  • 压缩效率更高,速度更慢,默认也不会保留源文件;

  • 解压缩也和gizp一样,可以使用-d参数

  • 也是设计来压缩单个文件的,默认不能对目录进行压缩操作

例如:压缩单个文件

xz

  • xz压缩文件会生成.xz结尾的压缩文件。

  • 使用方法和gzip一样,xz这个工具不常用。

  • 解压也是使用 -d 参数进行解压缩

  • 效率更高,但是速度比较慢。

posted on 2022-06-18 19:25  背对背依靠  阅读(1941)  评论(0编辑  收藏  举报