50 lines
1.5 KiB
Bash
Executable File
50 lines
1.5 KiB
Bash
Executable File
#!/bin/bash
|
|
# 双击本文件即可修复 macOS「已损坏,移到废纸篓」——去掉隔离标记(quarantine)。
|
|
# 只需运行一次。原理:本应用为免费分发、未做 Apple 公证,被系统加了隔离标记。
|
|
|
|
APP_NAME="Codex 插件市场.app"
|
|
|
|
echo "==================================================="
|
|
echo " 修复 macOS「已损坏」提示 —— Codex 插件市场"
|
|
echo "==================================================="
|
|
echo
|
|
|
|
# 依次在常见位置查找已安装的 app
|
|
CANDIDATES=(
|
|
"/Applications/$APP_NAME"
|
|
"$HOME/Applications/$APP_NAME"
|
|
"$(cd "$(dirname "$0")" && pwd)/$APP_NAME" # 脚本旁边(DMG 内)
|
|
)
|
|
|
|
TARGET=""
|
|
for p in "${CANDIDATES[@]}"; do
|
|
if [ -d "$p" ]; then TARGET="$p"; break; fi
|
|
done
|
|
|
|
if [ -z "$TARGET" ]; then
|
|
echo "❌ 没找到「$APP_NAME」。"
|
|
echo " 请先把 app 拖到「应用程序」文件夹,再双击本脚本。"
|
|
echo
|
|
read -n 1 -s -r -p "按任意键关闭…"
|
|
exit 1
|
|
fi
|
|
|
|
echo "找到应用:$TARGET"
|
|
echo "正在去除隔离标记…"
|
|
|
|
if xattr -cr "$TARGET" 2>/dev/null; then
|
|
echo "✅ 完成!现在可以正常双击打开「$APP_NAME」了。"
|
|
else
|
|
echo "普通权限失败,尝试用管理员权限(可能需要输入开机密码)…"
|
|
if sudo xattr -cr "$TARGET"; then
|
|
echo "✅ 完成!现在可以正常双击打开了。"
|
|
else
|
|
echo "❌ 仍失败。请手动在终端执行:"
|
|
echo " sudo xattr -cr \"$TARGET\""
|
|
fi
|
|
fi
|
|
|
|
echo
|
|
read -n 1 -s -r -p "按任意键关闭…"
|
|
echo
|