需修改协议头的书签是http://开头而目标站已强制https的safari书签;须退出safari后用终端命令或导出html再替换http://为https://来批量修正。

识别需要修改协议头的书签
你发现 Safari 里一批书签点开后跳转到「安全连接失败」或「无法建立连接」页面,检查地址才发现它们全是 http:// 开头,而目标网站早已强制 HTTPS;这类书签在 macOS 上无法通过右键单条编辑批量处理,必须从数据层统一修正。
用终端命令批量将 http:// 替换为 https://
第一步:退出 Safari——在 Dock 中右键图标 →「退出」,或按 Command + Q。【必须完全退出,否则 Bookmarks.plist 文件被锁定,后续命令会失败】
第二步:打开「访达」→ 按 Shift + Command + G → 输入路径:~/Library/Safari/ → 回车进入文件夹。
第三步:找到 Bookmarks.plist 文件,右键 →「显示简介」→ 确认「修改日期」是最近时间(比如今天或昨天),否则说明该文件未同步最新书签,替换将遗漏新增项。
第四步:打开「终端」→ 粘贴执行以下命令:
plutil -convert xml1 ~/Library/Safari/Bookmarks.plist && sed -i '' 's/http:\/\/\([^[:space:]]*\)/https:\/\/\1/g' ~/Library/Safari/Bookmarks.plist && plutil -convert binary1 ~/Library/Safari/Bookmarks.plist
这条命令分三段:先转为可读 XML 格式,再全局替换所有 http:// 后紧跟非空白字符的部分为 https://,最后转回 Safari 能加载的二进制格式。它只改协议头,不碰域名、路径、参数或空格,不会把 http://example.com/foo?redirect=http://bad.com 里的第二个 http 也错改成 https。
导出 HTML 后用文本编辑器精准替换
如果你担心直接改 plist 风险高,或想预览替换效果再执行,就走导出→编辑→重导入路径。
方法一:导出并手动校验
1、打开 Safari →「文件」→「导出书签…」→ 保存为 bookmarks_backup.html 到桌面。
2、用「文本编辑」(设为纯文本模式)或 VS Code 打开该文件 → 搜索 http:// → 观察匹配行是否都符合「协议头+域名」结构(如 HREF="http://apple.com"),排除注释或旧备份记录等干扰项。
3、执行全局替换:http:// → https://,但【务必勾选“匹配整个单词”或“区分大小写”,避免把 https:// 误替成 httpss://】。
4、保存文件,Safari →「文件」→「导入书签…」→ 选择刚修改的 HTML 文件。
方法二:用终端一行命令完成清洗(适合熟悉命令行者)
导出后,在终端中执行:sed -i '' 's/HREF="http:\/\//HREF="https:\/\//g' ~/Desktop/bookmarks_backup.html。它只改 HTML 属性值中的 HREF 协议头,不碰 TITLE、COMMENT 或其他字段,比无差别替换更安全。











