Linux压缩&解压缩

简介: Linux压缩&解压缩

 如有错误或有补充,请在评论区留下您的高见,同时文中给出大部分的示例,即是您暂时无法在Linux中查看,您也可以知道各种操作的功能以及输出

如果觉得本文写的不错,不妨点个赞,收藏一下,助力博主产生质量更高的作品

gzip和gunzip

gzipgunzip 是 Linux 系统中用于文件压缩和解压缩的工具,它们使用 Lempel-Ziv 77 (LZ77) 算法以及32位循环冗余检查(CRC)来压缩和解压缩文件,同时生成以 .gz 为扩展名的压缩文件

gzip [选项] [文件名]

gzip 命令用于压缩文件,对一个文件使用 gzip 命令时,原始文件会被删除,并替换为一个新的、压缩后的 .gz 文件,可以通过 > 来重定向输出,不删除源文件

 -c

       将压缩后的数据输出到标准输出(stdout),而不是写入文件。这允许你将压缩后的数据直接传递给其他命令或程序。

 -d--decompress

       解压缩文件(实际上,这通常使用 gunzip 命令来完成,但 gzip -d 也可以)。

 -f

       强制压缩,即使文件名与某个已存在的文件相同,也会覆盖它。

 -h

       显示帮助信息。

 -r--recursive

       递归地压缩指定目录下的所有文件。

  -v--verbose

       详细模式,显示正在压缩或解压缩的文件名。

示例:

gunzip [选项] [文件名.gz]

 gunzip 命令用于解压缩 .gz 文件,对一个 .gz 文件使用 gunzip 命令时,压缩文件会被删除,并替换为一个新的、解压缩后的文件

       常用选项与 gzip 类似,但通常不需要指定解压缩选项,因为 gunzip 默认就是进行解压缩操作

image.gif 编辑

tar与gzip结合可以压缩目录

zip和unzip

zip [选项] [压缩文件名.zip] [源文件或目录]

zip 命令用于压缩文件或目录,它可以将一个或多个文件或目录打包成一个 .zip 归档文件,并可以选择性地应用压缩算法来减小文件大小,不覆盖源文件

-r

递归压缩,用于压缩目录及其内容。

-q

安静模式,不显示详细的压缩过程信息。

-1-9

指定压缩级别,1 为最快但压缩率最低,9 为最慢但压缩率最高。

unzip [选项] [压缩文件名.zip] [目标目录]

unzip 命令用于解压缩 .zip文件,它可以将 ZIP 文件中的内容提取到当前目录或指定的目录中

-d

目录:指定解压到的目标目录。

-l

列出压缩文件中的内容,而不实际解压。

-q

安静模式,不显示详细的解压缩过程信息。

-o

覆盖模式,如果目标目录中存在同名文件,则无需提示直接覆盖。(部分系统默认是覆盖)

image.gif 编辑

以下是几个压缩级别的比较,同时可以看到在加上  -q  指令后,没有了上一张图片在压缩文件夹时的那么多输出

image.gif 编辑

tar (最好别忘了-f)

tar 是 Linux 和其他类 Unix 系统中用于文件归档的工具,名字来源于“Tape ARchive”,最初设计用于将数据备份到磁带上,现在 tar 广泛用于将多个文件和目录打包成一个单独的文件,以便于存储、备份或传输,此外,tar 文件还可以与其他压缩程序(如 gzipbzip2)结合使用,以进一步减小文件大小

tar 本身不进行压缩,它只是将文件和目录打包成一个文件,压缩是通过与 gzip或其他压缩程序结合使用来实现的。当你使用 -z-j 选项时,tar 会自动调用相应的压缩程序

       -c

       创建一个新的归档文件。

       -x

       从已有的归档文件中提取文件。

       -z

       通过 gzip 进行压缩或解压。

       -j

       通过 bzip2 进行压缩或解压。

       -f

       允许你指定归档文件的名称。

       -v

       详细模式,显示正在处理的文件名。

       -p

       保留原始文件的权限。

       -C

       指定解压到的目录。

       -t

       表示列出内容

image.gif 编辑 image.gif 编辑

目录
相关文章
|
4月前
|
Linux
在Linux中,列出几种常见打包工具并写相应解压缩参数。
在Linux中,列出几种常见打包工具并写相应解压缩参数。
|
4月前
|
算法 Linux 数据安全/隐私保护
“Linux压缩大师”:gzip、bzip2、tar与zip
在Linux系统管理中,文件压缩与解压至关重要,能有效减少存储空间占用并加快文件传输。常用工具包括gzip、bzip2、tar和zip。gzip采用Lempel-Ziv算法,压缩率高且速度快,适用于单个文件压缩,扩展名为.gz。bzip2压缩率更高但速度稍慢,同样用于单个文件,扩展名为.bz2。tar主要用于打包文件而不直接压缩,常与gzip或bzip2结合使用实现压缩打包。zip则是一种通用压缩工具,支持多文件压缩及密码保护,兼容性好。这些工具让Linux环境下的文件管理更加高效便捷。
61 1
|
4月前
|
存储 Linux Windows
Linux zip命令:压缩文件或目录
我们经常会在 Windows 系统上使用 “.zip”格式压缩文件,其实“.zip”格式文件是 Windows 和 Linux 系统都通用的压缩文件类型,属于几种主流的压缩格式(zip、rar等)之一,是一种相当简单的分别压缩每个文件的存储格式,本节要讲的 zip 命令,类似于 Windows 系统中的 winzip 压缩程序,其基本格式如下: [root@localhost ~]#zip [选项] 压缩包名 源文件或源目录列表 注意,zip 压缩命令需要手工指定压缩之后的压缩包名,注意写清楚扩展名,以便解压缩时使用。 下面给大家举几个例子。 【例 1】zip 命令的基本使用。 [r
135 0
Linux zip命令:压缩文件或目录
|
4月前
|
存储 Linux
Linux专栏08:Linux基本指令之压缩解压缩指令
Linux专栏08:Linux基本指令之压缩解压缩指令
58 4
|
6月前
|
Linux
linux 压缩解压
linux 压缩解压
41 1
|
5月前
|
Linux Shell
Linux中tar归档命令、zip压缩、gzip压缩、bzip2压缩
Linux中tar归档命令、zip压缩、gzip压缩、bzip2压缩
|
6月前
|
算法 Ubuntu Linux
探究Linux中的`bzless`命令:高效浏览`.bz2`压缩文件
`bzless`是Linux下用于查看`.bz2`压缩文件的工具,类似`less`,无需完全解压即可逐页浏览。可通过源码编译或包管理器(如`apt-get install bzip2-utils`)安装。使用时,直接输入`bzless yourfile.bz2`。它具有高效、兼容性和易用性优点,但仅适用于文本文件。对于常处理`.bz2`文件的用户来说非常实用。
|
6月前
|
Ubuntu Linux
探索Linux中的bzip2命令:高效的数据压缩与解压缩
`bzip2`是Linux中用于高效数据压缩的命令,基于BWT和Huffman编码,尤其适合文本文件。虽然压缩速度较慢,但压缩率高于`gzip`。要安装`bzip2`,可使用各Linux发行版的包管理器。基本用法包括:使用`bzip2`命令压缩文件(默认删除源文件),添加`-d`解压缩,`-k`保留源文件。可通过循环或通配符压缩多个文件。了解更多选项,可运行`man bzip2`或`bzip2 --help`。对于高压缩率需求,`bzip2`是理想选择。
|
6月前
|
Ubuntu Linux
深入解析 Linux 命令 `bzgrep`:快速搜索 Bzip2 压缩文件
`bzgrep`是Linux下用于在Bzip2压缩文件中搜索模式的工具,结合了`grep`和Bzip2的功能,允许用户无需解压即可搜索。安装`bzgrep`需通过包管理器如`apt-get`或`yum`。基本用法与`grep`类似,如`bzgrep "example" filename.txt.bz2`。可搭配`-i`, `-l`, `-n`等选项使用,并可通过`find`和`xargs`进行递归搜索。虽然对大文件可能较慢,但比完全解压更快。对于处理压缩文本数据的用户,`bzgrep`是必备工具。
|
6月前
|
算法 Linux
Linux命令bzcmp:比较bzip2压缩文件的内容
`bzcmp`是Linux下用于比较两个bzip2压缩文件内容的命令,无需先解压。基本用法是`bzcmp file1.bz2 file2.bz2`。如果文件相同则无输出,不同则显示首个不同字节的解压后偏移量及对应字节值。注意,大文件比较可能较慢,文件损坏可能影响结果,且非所有Linux发行版都预装此命令。相较于`diff`,`bzcmp`在处理压缩文件时更高效。