You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac下从子目录压缩生成的ZIP文件无法被系统归档工具打开

问题分析与修复

为什么会出现这个问题?

你在/scripts目录用./../作为压缩源,生成的zip里所有文件的路径都是../xxx这种相对路径。Mac自带的归档工具对这种路径结构的兼容性极差,直接判定归档为空;第三方解压工具对路径解析没那么严格,所以能正常读取内容。

另外你的排除规则-x ./../_backups/*虽然能排除目标文件夹,但进一步让zip内的路径结构变得混乱,加重了Mac工具的识别问题。

修复方案

方案1:先切到根目录再执行(最稳妥)

不管当前在哪个子目录,先切换到项目根目录再跑压缩命令,这样生成的zip里的路径都是基于根目录的正常结构,不会出现../:

# 手动执行的话,先cd到根目录
cd /你的项目根目录路径
zip -r ./_backups/man_backup_sub.zip ./ -x ./_backups/*

如果是写Shell脚本,自动获取根目录路径再切换:

# 获取脚本所在目录的上级目录(即项目根目录)
ROOT_DIR=$(cd "$(dirname "$0")/.." && pwd)
cd "$ROOT_DIR"
zip -r ./_backups/man_backup_sub.zip ./ -x ./_backups/*

方案2:全用绝对路径

把压缩目标、源目录、排除路径都换成绝对路径,彻底避免相对路径的坑:

zip -r /项目根目录/_backups/man_backup_sub.zip /项目根目录/ -x /项目根目录/_backups/*

验证方式

执行完命令后,用unzip -l /生成的zip文件路径查看归档内的文件列表,如果所有路径都是subfolder/file1.html、index.html这种正常格式(没有../前缀),Mac归档工具就能正常打开了。

内容的提问来源于stack exchange,提问作者renew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 10:05:23