在 Linux 上解压 ZIP 文件:完整指南
如何在 Linux 上解压 ZIP 文件(快速解答)
要在 Linux 上解压一个 .zip 文件,打开终端,运行 unzip 命令并跟上文件名即可:
unzip file.zip
这会把 file.zip 的内容解压到当前目录。如果想改为解压到指定的文件夹,只需加上 -d 选项并跟上目标目录:
unzip file.zip -d /target/dir
如果遇到 command not found 错误,说明系统里没有安装 unzip 工具。在 Ubuntu 或任何基于 Debian 的发行版上,用以下命令安装:
sudo apt install unzip
在其他发行版上,使用对应的包管理器:sudo dnf install unzip(Fedora)、sudo yum install unzip(CentOS/RHEL),或 sudo zypper install unzip(openSUSE)。截至 2026 年,unzip 仍是处理 .zip 归档的标准工具,并且已收录进 Ubuntu 24.04 LTS 等当前版本的默认软件仓库。装好之后,unzip file.zip 在所有主流 Linux 发行版上的用法都是一样的。
本指南的余下部分会介绍一些进阶用法,例如只解压特定文件、覆盖时不再逐个提示、处理带密码的归档、不解压就查看内容,以及排查常见错误。
引言
Zip 文件是文件压缩和归档中最常用的格式之一。它能把多个文件和目录打包成单个文件,既节省存储空间,也让数据在不同系统之间的传输更加方便。在各种工作或个人场景中,你都可能碰到需要先解压 zip 文件、才能访问其中数据的情况。
Linux 作为一款强大而灵活的操作系统,提供了多种工具和命令来高效地处理 zip 文件。无论你是在管理服务器备份、传输数据,还是单纯地整理文件,掌握在 Linux 上解压 zip 文件的方法都是一项必备技能。
本文旨在提供一份在 Linux 上解压 zip 文件的完整指南。我们会讲解 zip 文件的基础知识、如何检查并安装所需工具、各种解压命令、如何处理带密码的 zip 文件,以及常见问题的排查。读完本指南,你就能全面掌握如何在 Linux 环境中高效地管理 zip 文件。
了解 Zip 文件
Zip 文件是一种用于压缩和归档数据的常见格式。它把多个文件和目录打包成单个文件,让大量数据的存储和传输都变得更加轻松。下面我们就来看看 zip 文件到底是什么、通常用在哪些场景,以及使用它有哪些好处。
什么是 Zip 文件?
Zip 文件是一种压缩归档,里面包含一个或多个文件和目录。压缩会减小数据的整体体积,从而节省磁盘空间,也让文件传输更快、更高效。Zip 文件通常带有 .zip 扩展名,可以用各种工具和软件来创建和解压。
Zip 文件的常见使用场景
- 文件传输:把多个文件打包成一个 zip 文件发送,比逐个发送要方便得多,在处理电子邮件附件或上传文件时尤其如此。
- 备份:把重要的文件和目录归档到一个 zip 文件里,是制作备份的常见做法。这样能确保所有相关文件都以压缩格式集中存放在一起。
- 软件分发:许多软件包和应用都以 zip 文件的形式分发。用户只需下载一个压缩文件、解压后即可安装软件。
- 数据归档:把陈旧或不常用的数据整理并存放到 zip 文件中,有助于节省磁盘空间,让文件系统保持整洁。
使用 Zip 文件的好处
- 减小文件体积:压缩算法会缩减文件的大小,既能节省磁盘空间,又能缩短传输数据所需的时间。
- 方便:把多个文件打包成一个 zip 文件,简化了文件的管理和分发。
- 兼容性好:Zip 文件在各种操作系统上都得到广泛支持,是一种通用的压缩与归档选择。
- 安全性:Zip 文件可以设置密码保护,为敏感数据额外增添一层安全保障。
准备好你的 Linux 系统
在 Linux 系统上解压文件之前,你需要先确认所需的工具已经安装到位。为此最常用的工具就是 unzip。
检查是否已安装 unzip
要检查系统上是否已经装有 unzip,打开终端并运行:
unzip -v
如果已安装 unzip,你会看到版本信息;如果没有,则会收到一条提示,说找不到该命令。
安装 unzip
如果尚未安装 unzip,可以用包管理器来安装。安装命令会因 Linux 发行版而异。下面列出了几种最常见的 Linux 发行版的安装方法:
Debian 系系统(例如 Ubuntu、Linux Mint)
Debian 系系统使用 APT 包管理器。在 Ubuntu 24.04 LTS 等当前版本上,推荐使用 apt 命令,不过较旧的 apt-get 用起来效果完全相同。要安装 unzip,运行:
sudo apt install unzip
对应的 sudo apt-get install unzip 效果一样,在脚本中依然有效。
Red Hat 系系统(例如 CentOS、RHEL)
Red Hat 系系统使用 yum 包管理器。要安装 unzip,运行:
sudo yum install unzip
Fedora 系统
Fedora 使用 dnf 包管理器,它是 yum 的下一代版本。要安装 unzip,运行:
sudo dnf install unzip
openSUSE 系统
openSUSE 使用 zypper 包管理器。要安装 unzip,运行:
sudo zypper install unzip
装好 unzip 后,可以再运行一次 unzip -v 命令来验证是否安装成功。
准备好所需工具后,你的 Linux 系统就可以着手处理 zip 文件了。在下一节中,我们将介绍基本的解压命令,以及如何用好它们。
基本解压命令
在 Linux 中用 unzip 命令解压文件非常简单。本节将介绍 unzip 命令的基本语法和选项,帮你快速上手。
将文件解压到当前目录
unzip 命令最基本的用法,就是把 zip 文件的内容解压到当前目录。语法如下:
unzip filename.zip
运行这条命令后,filename.zip 的内容就会被解压到当前目录。你会看到正在解压的文件列表以及正在创建的目录。
示例:解压一个文件
假设你的当前目录里有一个名为 example.zip 的 zip 文件。要解压它,运行:
unzip example.zip
example.zip 里的文件会被解压到当前目录,同时你会看到显示解压进度的输出。
常见输出及其含义
运行 unzip 命令时,你可能会在输出中看到各种信息,例如:
- 正在解压的文件名。
- 正在创建的目录。
- 解压过程中出现的任何错误或警告。
读懂这些输出,有助于你排查解压过程中出现的各种问题。
高级解压选项
除了基本的解压操作,unzip 命令还提供了若干选项,用于更进阶的场景。本节将介绍如何把文件解压到指定目录、如何只提取特定文件,以及如何处理带密码保护的 zip 文件。
将文件解压到指定目录
如果你想把 zip 文件的内容解压到当前目录以外的地方,请使用 -d 选项,并跟上目标目录的路径。
unzip filename.zip -d /path/to/destination
示例:解压到指定目录
假设你想把 example.zip 解压到 /home/user/documents 目录,运行:
unzip example.zip -d /home/user/documents
这条命令会把 example.zip 的内容解压到指定的目录。
从 Zip 归档中提取特定文件
有时,你可能只需要从 zip 归档中提取某几个文件。只要在 zip 文件名后面把想提取的文件一一列出即可。
unzip filename.zip file1 file2
示例:提取特定文件
如果你只想从 example.zip 中提取 file1.txt 和 file2.txt,运行:
unzip example.zip file1.txt file2.txt
这样只有指定的那些文件才会被解压到当前目录。
覆盖已有文件时不再提示
默认情况下,unzip 在覆盖任何已有文件之前都会先向你提示。如果你希望覆盖文件时不再逐个提示,请使用 -o 选项。
unzip -o filename.zip
示例:覆盖文件
要解压 example.zip 并在不提示的情况下覆盖任何已有文件,运行:
unzip -o example.zip
这条命令会解压 example.zip 的内容,并覆盖所有同名的已有文件。
处理带密码保护的 Zip 文件
如果 zip 文件设置了密码保护,你需要提供密码才能解压其内容。使用 -P 选项,并跟上密码。
unzip -P password filename.zip
示例:解压带密码保护的文件
假设 example.zip 设置了密码保护,密码是 mypassword,那么运行:
unzip -P mypassword example.zip
安全提示:在命令行中直接提供密码可能并不安全,因为系统上的其他用户有可能看到它。使用这个选项时请务必谨慎。
不解压就查看内容
在解压 zip 文件的内容之前,你可能想先看看里面都有些什么。unzip 命令提供了一个选项,让你无需解压就能列出 zip 文件的内容。
列出 Zip 文件的内容
要列出 zip 文件的内容,请使用 -l 选项:
unzip -l filename.zip
示例:列出内容
要列出 example.zip 的内容,运行:
unzip -l example.zip
输出会显示 zip 文件中所包含的文件和目录列表,以及它们各自的大小和修改日期。
应对常见问题
解压文件时,有时会出现错误或各种状况。本节将介绍一些常见问题及其解决办法,包括文件损坏、权限问题和空间不足。
排查解压错误
文件损坏
如果遇到与文件损坏相关的错误,可能是因为下载不完整或文件已损坏。可以尝试重新下载这个 zip 文件,然后再次解压。
权限问题
如果收到"权限被拒绝"(permission denied)之类的错误,请确认你对目标目录具有必要的写入权限。你可能需要借助 sudo 来获取所需的权限。
sudo unzip filename.zip -d /restricted/path
空间不足
请确认有足够的磁盘空间来解压这个 zip 文件的内容。你可以用 df 命令查看可用的磁盘空间:
df -h
如有必要,请释放一些空间,或者换一个空间充足的目录。
其他可选的解压工具
虽然 unzip 是最常用的解压工具,但还有一些其他工具,它们提供了额外的功能,并支持不同的归档格式。
7-Zip
7-Zip 是一款功能强大的工具,支持包括 zip、tar 和 rar 在内的多种归档格式。要在基于 Debian 的系统上安装 7-Zip,运行:
sudo apt-get install p7zip-full
要用 7-Zip 解压 zip 文件,运行:
7z x filename.zip
Unrar
Unrar 是另一款工具,主要用于解压 rar 文件,但同样支持 zip 文件。要在基于 Debian 的系统上安装 Unrar,运行:
sudo apt-get install unrar
要用 Unrar 解压 zip 文件,运行:
unrar x filename.zip
管理 Zip 文件的最佳实践
要高效地管理 zip 文件,离不开对归档进行合理的整理、命名和完整性保障。本节提供了一些处理 zip 文件的最佳实践。
整理并命名 Zip 文件
- 命名保持一致:为 zip 文件起一个描述性强、风格统一的名字,方便一眼识别。
- 目录结构:维护一套条理清晰的目录结构来存放 zip 文件,把相关的文件归置在一起。
定期更新并备份重要的 Zip 归档
- 定期备份:确保重要的 zip 文件得到定期备份,以防数据丢失。
- 更新归档:定期用新增或修改过的文件更新 zip 归档,让其内容保持最新。
用校验和确保 Zip 文件的完整性
用校验和来验证 zip 文件的完整性。可以用 sha256sum 命令为一个 zip 文件生成校验和:
sha256sum filename.zip

