
准备工作
- 一台装有 macOS 系统的 Mac 电脑。
- 已从 App Store 或官网安装了最新版的微信。
- 了解如何打开“终端” (Terminal) 应用(在“应用程序” > “实用工具”里可以找到)。
操作步骤
整个过程只需三步,请依次在终端中执行以下命令。
第一步:复制应用
首先,我们需要复制一个微信应用的副本,并给它一个新的名字,例如 微信2.app
。
打开“终端”,输入以下命令后按回车:
1 | sudo cp -R /Applications/WeChat.app /Applications/微信2.app |
命令解析:
sudo
: 以管理员权限执行命令,因此会提示你输入电脑的开机密码(输入时密码不可见,输完按回车即可)。cp -R
: 复制整个文件夹(因为.app
文件本质上是一个文件夹)。/Applications/WeChat.app
: 原始微信应用的路径。/Applications/微信2.app
: 新应用的路径和名称。
执行完毕后,你会在“应用程序”文件夹里看到一个名为“微信2”的应用图标。
第二步:修改应用唯一标识符
macOS 系统通过一个名为 CFBundleIdentifier
的唯一标识符来区分不同的应用。为了让系统认为“微信”和“微信2”是两个独立的应用,我们必须修改副本的标识符。
继续在终端中输入以下命令:
1 | sudo /usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier net.maclub.wechat2" /Applications/微信2.app/Contents/Info.plist |
命令解析:
/usr/libexec/PlistBuddy
: macOS 内置的用于编辑.plist
文件的工具。-c "Set :CFBundleIdentifier net.maclub.wechat2"
: 这是核心指令。Set
是设置操作,:CFBundleIdentifier
是要修改的键,net.maclub.wechat2
是我们为新应用设置的新的、唯一的标识符(你可以自定义,但建议保持格式,确保不与现有应用冲突)。/Applications/微信2.app/Contents/Info.plist
: 指向副本应用的配置文件路径。
⚠️ 常见错误提示:
Unrecognized Command
如果你执行此命令后看到Unrecognized Command
错误,99% 的原因是你使用了错误的引号!
- 错误:
“Set :CFBundleIdentifier ...”
(中文或富文本的全角弯引号)- 正确:
"Set :CFBundleIdentifier ..."
(英文半角的直引号)从网页复制命令时,请务必检查引号的格式是否正确。建议直接复制本文提供的代码块。
第三步:重新签名应用
由于我们修改了应用的内容(Info.plist
文件),原有的代码签名已经失效。macOS 的安全机制(Gatekeeper)会阻止运行签名被破坏的应用。因此,我们需要对其进行一次强制的本地重新签名。
在终端中输入最后一条命令:
1 | sudo codesign --force --deep --sign - /Applications/微信2.app |
命令解析:
codesign
: macOS 的代码签名工具。--force
: 强制替换现有的签名。--deep
: 递归地为应用包内的所有组件(如框架、插件)进行签名。--sign -
: 使用一个临时的、本地生成的(ad-hoc)签名进行签署。/Applications/微信2.app
: 需要签名的目标应用。
大功告成!
现在,所有步骤都已完成!
回到“访达” > “应用程序”文件夹,你会看到 微信2.app
图标已经可以正常显示。双击它,熟悉的登录二维码界面就会出现。现在你可以登录第二个微信账号了,两个微信可以完美地同时运行,互不干扰。
你还可以将 微信2.app
拖到程序坞(Dock)上,方便日后快速启动。
后续维护
-
如何更新?
通过这种方式创建的微信2.app
不会跟随 App Store 自动更新。当你的主微信更新后,如果希望微信2
也更新,只需删除旧的微信2.app
,然后重新按照本文的步骤操作一遍即可。 -
如何卸载?
直接将微信2.app
拖到废纸篓即可。其聊天记录等数据存储在~/Library/Containers/
目录下,以你设置的标识符命名(例如net.maclub.wechat2
),如果需要彻底清理,可以一并删除该文件夹。
希望这篇教程能帮助你提升在 Mac 上的工作与沟通效率!