核心工具:PKUNZIP
PKUNZIP 是 PKWARE 公司开发的 DOS 程序,是解压 ZIP 文件的标准工具,你会得到一个包含以下三个文件的压缩包:

PKUNZIP.EXE:解压程序(主程序)PKZIP.EXE:压缩程序(用于创建 ZIP 文件)ZIP2EXE.EXE:将 ZIP 文件转换为自解压 EXE 文件的程序
在解压之前,请确保 PKUNZIP.EXE 文件位于你的当前目录,或者它的路径在系统的 PATH 环境变量中。
基本语法
PKUNZIP 的基本语法结构如下:
PKUNZIP [选项] <ZIP文件名> [解压路径]
[选项]:控制解压行为的开关,例如覆盖文件、显示列表等。<ZIP文件名>:必须指定,你要解压的 ZIP 文件名。[解压路径]:可选,指定解压文件到哪个目录,如果不指定,则解压到当前目录。
常用选项及示例
以下是 PKUNZIP 最常用的一些选项:
-d (解压到指定目录)
这是最常用的选项之一,可以将 ZIP 文件中的目录结构完整地解压到你指定的路径。

示例:
假设你有一个名为 my_project.zip 的文件,你想把它解压到 C:\temp\project 目录。
PKUNZIP -d C:\temp\project my_project.zip
- 说明:这个命令会创建
C:\temp\project目录(如果它不存在),然后将my_project.zip中的所有文件和子文件夹解压到该目录下。
-o (覆盖已存在的文件)
当目标目录中已存在同名文件时,默认情况下 PKUNZIP 会提示你是否覆盖,使用 -o 选项可以强制覆盖所有文件,无需确认。
示例:
解压 archive.zip 到当前目录,并自动覆盖任何已存在的文件。
PKUNZIP -o archive.zip
-n (不覆盖已存在的文件)
与 -o 相反,-n 选项会跳过所有在目标目录中已存在的文件,不进行覆盖。

示例:
解压 archive.zip,但只解压那些当前目录中不存在的文件。
PKUNZIP -n archive.zip
-v (查看 ZIP 文件内容)
在不实际解压文件的情况下,显示 ZIP 文件中包含的文件列表、压缩比、日期和时间等信息。
示例:
查看 data.zip 的内容列表。
PKUNZIP -v data.zip
-l (简短列表)
与 -v 类似,但只显示文件名,不显示其他详细信息。
示例:
快速列出 data.zip 中的文件名。
PKUNZIP -l data.zip
-u (更新文件)
只解压那些在 ZIP 文件中更新过的文件,或者目标目录中不存在的文件,这是一个非常实用的选项,用于同步更新文件。
示例:
更新当前目录,解压 new_files.zip 中有变化的文件。
PKUNZIP -u new_files.zip
组合使用选项
你可以将多个选项组合在一起使用,以实现更复杂的需求。
示例 1:解压到指定目录并自动覆盖
PKUNZIP -d -o C:\backup\docs.zip
这个命令会将 docs.zip 解压到 C:\backup 目录,并自动覆盖任何已存在的同名文件。
示例 2:先查看内容,再解压
这是一个很好的习惯,可以避免解压错误。
REM 第一步:查看内容 PKUNZIP -v important_files.zip REM 第二步:确认无误后,解压到指定目录 PKUNZIP -d -o C:\archive\important_files.zip
重要提示和注意事项
-
文件名长度:DOS 和早期的 Windows 版本(如 Windows 95/98)对文件名和路径长度有限制(通常是 8.3 格式,即主名8字符,扩展名3字符),如果你的 ZIP 文件包含长文件名,PKUNZIP 可能无法正确处理它们,在更现代的 DOS 环境(如 DOSBox 或 Windows 98/ME)中,这个问题会得到改善。
-
中文文件名:在纯英文 DOS 环境下,处理包含中文字符的 ZIP 文件可能会遇到乱码问题,这通常是由于编码不匹配导致的。
-
路径分隔符:在 DOS 中,路径分隔符使用反斜杠
\,而不是现代系统中的正斜杠 。 -
当前目录:如果你不指定解压路径,文件会被解压到当前所在的目录,你可以使用
CD命令来切换当前目录。REM 切换到 D 盘的 temp 目录 D: CD \TEMP REM 在当前目录 (D:\TEMP) 解压 archive.zip PKUNZIP archive.zip
| 命令 | 功能 | 示例 |
|---|---|---|
PKUNZIP file.zip |
解压到当前目录 | PKUNZIP data.zip |
PKUNZIP -d dir.zip |
解压并保持目录结构到当前目录 | PKUNZIP -d my_project.zip |
PKUNZIP -d path\dir.zip |
解压到指定路径 | PKUNZIP -d C:\temp\project.zip |
PKUNZIP -o file.zip |
解压并覆盖已有文件 | PKUNZIP -o old_files.zip |
PKUNZIP -n file.zip |
解压但不覆盖已有文件 | PKUNZIP -n new_files.zip |
PKUNZIP -v file.zip |
查看 ZIP 文件内容详情 | PKUNZIP -v archive.zip |
PKUNZIP -u file.zip |
更新文件(只解压有变化的) | PKUNZIP -u updates.zip |
希望这份详细的指南能帮助您在 DOS 环境下顺利解压 ZIP 文件!
