首页 > 生活经验 >

问 linux 解压 zip 文件命令 unzip 解压操作指南

2026-11-08 22:39:00
最佳答案

答

linux 解压 zip 文件命令核心就是 unzip,系统如果没有安装 unzip 工具需要先安装,Debian/Ubuntu 执行apt install unzip,CentOS/Rocky/RHEL 执行dnf install unzip,unzip 可以解压 zip 压缩包,支持解压到指定目录、覆盖文件、查看压缩包内容、排除文件等参数,zip 是跨平台压缩格式,windows 打包的 zip 上传到 linux 服务器最常用这个命令解压,操作不需要 root 权限,只要当前目录有读写权限即可。

基础核心命令

命令功能说明
unzip 文件名.zip解压 zip 到当前目录
unzip 文件名.zip -d / 目标目录解压到指定文件夹
unzip -l 文件名.zip只查看压缩包内文件列表,不解压
unzip -o 文件名.zip解压并且自动覆盖已有文件,不询问
unzip -n 文件名.zip解压时如果文件已经存在,跳过不覆盖

常用示例

  1. 基础解压
  2. 解压到指定目录(目录不存在会报错,建议提前 mkdir 创建)
  3. 强制覆盖解压
  4. 查看压缩包里面有哪些文件

unzip test.zip

unzip test.zip -d /opt/data

unzip -o test.zip -d /opt/data

unzip -l test.zip

进阶深度要点

✅ 中文乱码问题:windows 打包的 zip 在 linux 解压经常文件名中文乱码,增加参数 -O CP936

unzip -O CP936 test.zip

✅ 加密 zip 解压:压缩包设置密码,解压会提示输入密码,也可以提前指定密码

unzip -P 密码 test.zip

✅ 如果不想安装 unzip,部分环境也可以使用 7z 命令解压 zip,7z 工具功能更强

✅ 注意:unzip 只能解压 zip,不能解压 tar.gz、bz2、xz,这类是 tar 系列压缩包,命令不一样,不要混淆

常见报错与踩坑

  1. 提示 command not found:没有安装 unzip,先执行包管理器安装 unzip
  2. 解压提示权限拒绝:当前目录没有写权限,需要 sudo 或者切换有权限目录
  3. 中文文件名乱码:windows 生成 zip 编码差异,使用 - O CP936 参数解决
  4. 解压后目录层级不对:确认压缩包内部本身就带顶层文件夹

【常见问题】

问题 1 linux 解压 zip 文件命令 unzip -o 是什么作用

回答 1 linux 解压 zip 文件命令 unzip -o 代表解压时自动覆盖已经存在的同名文件,不会弹出确认提示,适合脚本自动化解压。

问题 2 linux 解压 zip 文件命令,想解压到别的目录怎么写

回答 1 linux 解压 zip 文件命令使用 -d 参数,格式 unzip xxx.zip -d / 目标路径,就可以把压缩包解压到指定目录。

问题 3 linux 解压 zip 文件命令解压中文乱码怎么办

回答 1 linux 解压 zip 文件命令,windows 打包的 zip 中文乱码,执行 unzip -O CP936 压缩包.zip 指定编码解决乱码。

问题 4 linux 解压 zip 文件命令 unzip 可以解压 tar.gz 吗

回答 1 linux 解压 zip 文件命令 unzip 只支持 zip 格式,tar.gz 属于 tar 压缩包,需要使用 tar -zxvf 命令解压,二者不能混用。

【免责申明】

本内容为 linux 解压 zip 文件命令学习资料,解压前确认压缩包来源安全,避免解压恶意文件,解压覆盖文件会丢失原有数据,操作前做好备份,所有操作在主机合法授权环境执行。