三步修复Mac终端App“已损坏无法打开”:先用sudo spctl --master-disable启用“任何来源”,再用xattr -cr拖拽App清除quarantine标记,最后为终端授予“完整磁盘访问”权限。

Mac终端修复App提示“已损坏无法打开”,本质是清除系统强加的隔离标记并补全必要权限,三步操作后即可双击启动,无需重装或换软件。
启用“任何来源”系统级开关
这一步是后续所有终端命令生效的前提,不做则xattr命令会失败或无效。macOS Ventura(13.0)及以上版本已彻底隐藏该选项,必须用终端激活。
打开「启动台」→ 搜索「终端」→ 点击运行 → 粘贴以下命令并回车:sudo spctl --master-disable → 输入管理员密码(输入时屏幕完全无显示,包括星号,凭记忆准确输入后直接回车)。
完成后前往「系统设置」→「隐私与安全性」→「安全性」→ 下拉刷新页面,确认“允许从以下位置下载的应用程序”下方已出现「任何来源」选项。
清除App的quarantine隔离属性
即使开了“任何来源”,macOS仍会为每个从网络下载的App打上com.apple.quarantine标签——就像快递箱被贴了“可疑包裹”封条,不撕掉就打不开。终端清除必须针对.app本体,不能对.dmg、zip或未挂载镜像操作。
方法一:拖拽式(推荐,零输错风险)
终端中输入xattr -cr → 注意末尾留一个空格 → 打开「访达」→ 进入「应用程序」文件夹 → 将出问题的App图标直接拖进终端窗口 → 回车执行。
方法二:手动路径式
终端中输入:sudo xattr -r -d com.apple.quarantine "/Applications/XXX.app" → 把XXX替换成你的App名(如Obsidian、Notion),名字含空格或中文必须用英文双引号包裹 → 回车 → 输入密码。
【关键提醒】路径末尾不能带斜杠,也不能漏掉“.app”后缀;若App尚未移入「应用程序」文件夹,请先拖进去再操作,否则命令可能静默失败。
授予终端“完整磁盘访问”权限(macOS 13+必需)
从Ventura开始,终端默认无权修改应用属性。若执行xattr时提示“Operation not permitted”,说明这步没做。
第一步:「系统设置」→「隐私与安全性」→「完整磁盘访问权限」→ 点右下角锁图标解锁 → 点「+」号 → 按Command+Shift+G → 输入路径:/Applications/Utilities/Terminal.app → 选中「终端」→ 点「添加」。
第二步:重启终端,再执行上一步的xattr命令。
第三步:完成清除后,在「访达」中双击该App图标即可启动。

















