如何在Linux中压缩、解压文件?

Winzip、Winrar是Windows操作系统中流行的打包和压缩工具。Winzip在旧时代非常流行,这使得zip压缩算法也很流行。目前,很多文件和文件夹也是用zip算法压缩的。Minix、Atari、MacOS和Android也支持Zip压缩。在本文中,我们将讨论如何使用zip算法进行压缩和解压缩。

null

为Ubuntu、Debian、Mint和Kali安装Zip

要使用zip功能,应下载所需的软件包默认情况下不安装这些软件包。我们将安装名为 zip unzip 对于基于deb的分布。

$ sudo apt-get install zip unzip -y
Install Zip
为Ubuntu、Debian、Mint和Kali安装Zip

为Fedora、CentOS和RHEL安装Zip

我们可以用 yum 安装程序包管理器 zip .

$ sudo yum install zip

zip命令语法

zip命令使用以下语法。它接受多个文件和文件夹压缩与一个单一的步骤。

zip OPTIONS ARCHIVE INPATH INPATH ...
  • OPTIONS 将用于设置zip命令的某些属性或行为,如压缩级别等。
  • ARCHIVE 将要创建的压缩文件的名称。
  • INPATH 是我们可以压缩的文件和文件夹。可能有多个INPATH。

压缩文件

我们将从一个简单的示例开始,其中我们将压缩一个名为 report.xm 并将其压缩到一个名为 report.zip .  我们可以从输出中看到,压缩级别约为63%。

$ zip report.zip report.xml
Compress A File
压缩文件

用Zip压缩多个文件

我们可以压缩多个文件与zip命令,我们将添加所有的文件和文件夹在命令的最后作为一个参数。在此示例中,将名为report.xml、workspace/、example.txt的文件和文件夹压缩到名为 backup.zip .

$ zip backup.zip report.xml workspace/ example.txt httpd-2.4.38.tar.bz2.asc package.json
Compress Multiple Files With Zip
用Zip压缩多个文件

根据扩展名压缩多个文件

我们可以根据扩展名压缩多个文件。我们将使用glob for bash并提供扩展名,如txt、png、XML等。在本例中,我们将扩展名为*.txt的文本文件压缩到名为textu backup.zip的存档文件中。

$ zip text_backup.zip *.txt
Compress Multiple Files According To Their Extension
根据扩展名压缩多个文件

压缩文件夹和目录

压缩文件不需要zip命令选项,但压缩文件夹需要zip命令的递归标志。为了压缩目录或文件夹,我们必须提供 -r 选项如下。

$ zip -r backup.zip perl5/ masscan/ nmap/
Compress Folders and Directories
压缩文件夹和目录

通过搜索压缩文件

find命令可用于通过搜索特定文件的名称、扩展名、大小等来查找该文件,然后我们可以使用zip命令压缩文件或文件夹。在本例中,我们将在当前工作目录中搜索扩展名为txt的文件,并将其压缩到当前路径中。

$ find . -name "*.txt" -print | zip source [email protected]
Compress File By Searching Them
通过搜索压缩文件

解压缩或解压缩Zip文件

解压比压缩容易我们只提供了压缩文件的解压命令。在本例中,我们将解压缩名为  text\备份.zip。如果存在相同的文件,我们可能会被问到替换问题。

$ unzip text_backup.zip
Decompress Zip Files
解压缩Zip文件

从Zip存档中提取特定文件

我们可以像下面这样从zip存档中解压缩特定的文件。在本例中,我们将提取以rc作为扩展名的文件。

$ unzip test.zip *rc

这将只提取以结尾的文件 rc .

相关文章: 如何在Windows中以多种方式打开Zip文件?

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享