跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / BashWeChat

macOS 双开与多开微信 WeChat 教程(支持 4.X 及以上版本)

macOS 系统下通过 Shell 脚本或手动操作实现微信双开及多开。主要步骤包括备份原应用、复制副本、修改 Bundle Identifier、重新签名及清理 Quarantine 属性。脚本支持一键自动执行、多开指定数量副本及更新后重建功能。适用于 4.X 及以上版本,需具备 sudo 权限。

利刃发布于 2025/11/12更新于 2026/8/1756 浏览
macOS 双开与多开微信 WeChat 教程(支持 4.X 及以上版本)

macOS 双开与多开微信 WeChat 教程(支持 4.X 及以上版本)

一、准备工作

  1. 确保系统为 macOS,并已正确安装官方微信(路径:/Applications/WeChat.app)。
  2. 确认系统中具备以下工具:
    • ditto
    • codesign
    • xattr
    • /usr/libexec/PlistBuddy

打开终端(Terminal),确保拥有 sudo 权限。

免责声明

本教程及脚本仅供学习和研究使用,方法来源于网络。请自行评估风险与适用性。若因操作导致系统异常、微信账号异常或其他损失,均由使用者本人承担,与本文作者无关。

二、一键双开脚本(推荐方法)

终端操作|创建脚本文件

我们需要先新建一个脚本文件,把前面给出的 wechat-2.sh 代码保存进去。

1. 新建文件

在终端中输入:

cd ~
touch wechat-2.sh 

这样就在用户主目录下新建了一个 wechat-2.sh 文件。

2. 打开文件进行编辑

你可以用以下几种方法打开文件:

方法 1:用文本编辑器(推荐)

如果你习惯图形界面,可以用系统自带的 TextEdit:

open -e wechat-2.sh 

把脚本粘贴进去,然后保存即可。

方法 2:用 VS Code(如果已安装)
code wechat-2.sh 
方法 3:用终端内置编辑器 nano
nano wechat-2.sh 
  • 复制我提供的脚本内容,粘贴进去;
  • 粘贴完成后,按下 Ctrl + O 保存,然后回车;
  • 按 Ctrl + X 退出。
3. 赋予执行权限

保存文件后,需要让脚本有运行权限:

chmod +x wechat-2.sh 

这样 wechat-2.sh 就变成了可执行文件。

4. 运行脚本

关闭所有微信进程

sudo ./wechat-2.sh kill

更新后重建副本

sudo ./wechat-2.sh rebuild --force

多开运行(生成多个小绿书副本)

sudo ./wechat-2.sh multi 3 --force

会自动生成:小绿书 1、小绿书 2、小绿书 3。

第一次运行(自动复制 + 双开)

sudo ./wechat-2.sh auto --force

系统会提示输入管理员密码,请输入你的 Mac 密码(输入时不会显示)。

👉 总结一下操作步骤:

  1. touch wechat-2.sh 新建文件
  2. nano wechat-2.sh 或 open -e wechat-2.sh 编辑脚本
  3. chmod +x wechat-2.sh 添加运行权限
  4. sudo ./wechat-2.sh auto --force 执行

三、完整脚本(支持双开、多开、更新后重建)

以下脚本包含 multi 多开 与 rebuild 重建副本 功能。

#!/bin/bash
# macOS WeChat Multi Instance Script
# Usage:
# sudo ./wechat-2.sh auto --force
# sudo ./wechat-2.sh multi 3 --force # 多开 3 个副本
# sudo ./wechat-2.sh rebuild --force # 更新后自动重建所有副本
set -euo pipefail
# 颜色
RED='\033[0;31m';GREEN='\033[0;32m';YELLOW='\033[1;33m';BLUE='\033[0;34m';NC='\033[0m'
# 默认路径
WECHAT_APP="/Applications/WeChat.app"
DEST_DIR="/Applications"
BASE_APP_NAME="小绿书"
FORCE=0

require_cmd(){
  command -v "$1">/dev/null 2>&1 || {
    echo -e "${RED}缺少命令:$1${NC}"
    exit 1
  }
}

for cmd in ditto codesign xattr /usr/libexec/PlistBuddy; do
  require_cmd "$cmd"
done

check_wechat(){
  if [ ! -d "$WECHAT_APP" ]; then
    echo -e "${RED}未找到微信:$WECHAT_APP${NC}"
    exit 1
  fi
  echo -e "${GREEN}✓ 检测到微信已安装${NC}"
}

remove_app(){
  local dest="$DEST_DIR/$1"
  if [ -d "$dest" ]; then
    if [ $FORCE -eq 1 ]; then
      sudo rm -rf "$dest"
    else
      read -p "是否删除并重新创建 $1? (y/n): " yn
      [[ $yn =~ ^[Yy]$ ]] && sudo rm -rf "$dest"
    fi
  fi
}

copy_wechat(){
  local app_name=$1
  sudo ditto "$WECHAT_APP" "$DEST_DIR/$app_name"
}

modify_bundle_id(){
  local app_name=$1
  local info_plist="$DEST_DIR/$app_name/Contents/Info.plist"
  local new_id="com.tencent.xinWeChat.dual.$RANDOM"
  sudo /usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier $new_id" "$info_plist"
  sudo /usr/libexec/PlistBuddy -c "Set :CFBundleDisplayName $app_name" "$info_plist" || true
}

resign_app(){
  local app_name=$1
  local dest="$DEST_DIR/$app_name"
  sudo rm -rf "$dest/Contents/_CodeSignature" || true
  sudo xattr -dr com.apple.quarantine "$dest" || true
  sudo codesign --force --deep --sign - --timestamp=none "$dest"
}

start_apps(){
  shift
  for app_name in "$@"; do
    open -n "$DEST_DIR/$app_name"
    sleep 1
  done
}

kill_wechat(){
  pkill -f "WeChat" || true
}

# 查找已存在的小绿书副本
list_existing_apps(){
  ls "$DEST_DIR" | grep "^$BASE_APP_NAME[0-9]*\.app$" || true
}

main(){
  case "${1:-}" in
    setup)
      check_wechat
      remove_app "${BASE_APP_NAME}.app"
      copy_wechat "${BASE_APP_NAME}.app"
      modify_bundle_id "${BASE_APP_NAME}.app"
      resign_app "${BASE_APP_NAME}.app"
      ;;
    start)
      start_apps "WeChat.app" "${BASE_APP_NAME}.app"
      ;;
    auto)
      check_wechat
      remove_app "${BASE_APP_NAME}.app"
      copy_wechat "${BASE_APP_NAME}.app"
      modify_bundle_id "${BASE_APP_NAME}.app"
      resign_app "${BASE_APP_NAME}.app"
      start_apps "WeChat.app" "${BASE_APP_NAME}.app"
      ;;
    multi)
      local count=${2:-2}
      check_wechat
      for i in $(seq 1 "$count"); do
        local app_name="${BASE_APP_NAME}${i}.app"
        remove_app "$app_name"
        copy_wechat "$app_name"
        modify_bundle_id "$app_name"
        resign_app "$app_name"
      done
      start_apps $(for i in $(seq 1 "$count"); do echo "${BASE_APP_NAME}${i}.app"; done)
      ;;
    rebuild)
      check_wechat
      echo -e "${BLUE}检测到系统更新或微信更新,正在重建副本...${NC}"
      local apps=$(list_existing_apps)
      for app_name in $apps; do
        echo -e "${YELLOW}重建 $app_name ...${NC}"
        remove_app "$app_name"
        copy_wechat "$app_name"
        modify_bundle_id "$app_name"
        resign_app "$app_name"
      done
      echo -e "${GREEN}✓ 所有副本已重新生成${NC}"
      ;;
    -k|kill)
      kill_wechat
      ;;
    -h|--help|"")
      echo "用法:$0 {setup|start|auto|multi N|rebuild|kill} [--force]"
      ;;
    *)
      echo -e "${RED}未知参数:$1${NC}"
      exit 1
      ;;
  esac
}

for arg in "$@"; do
  [[$arg=="--force"]] && FORCE=1
done
main "$@"

四、手动操作流程(可选)

如果你只想多开 1 次,可以手动操作:

  1. 验证结果 打开 Finder > 应用程序,若能看到 小绿书.app(图标可能灰色或正常),即可双开。

重新签名应用

sudo codesign --force --deep --sign - /Applications/小绿书.app 

修改应用唯一标识符

sudo /usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier net.maclub.wechat" /Applications/小绿书.app/Contents/Info.plist 

复制应用

sudo cp -R /Applications/WeChat.app /Applications/小绿书.app 

五、多开操作(创建多个副本)

# 创建 3 个副本:小绿书 1、小绿书 2、小绿书 3
sudo ./wechat-2.sh multi 3 --force

六、更新后自动重建副本

为什么需要重建?
  • 微信每次更新后,/Applications/WeChat.app 会被覆盖;
  • 之前生成的副本可能失效或无法正常启动;
  • 使用 rebuild 模式,可以自动检测所有小绿书副本并重新克隆。
使用方法
# 一键重建已存在的所有副本
sudo ./wechat-2.sh rebuild --force
效果
  • 脚本会自动找到 /Applications/ 下所有 小绿书 N.app;
  • 删除旧副本并重新复制新版微信;
  • 重新生成 Bundle ID 并签名;
  • 保持原来的命名(小绿书 1、小绿书 2…)。

七、总结

  • 双开:适合 2 个账号同时使用;
  • 多开:通过 multi 参数创建多个副本,实现无限多开;
  • 更新后重建:使用 rebuild 一键重建所有副本,免去升级后的手动操作。

目录

  1. macOS 双开与多开微信 WeChat 教程(支持 4.X 及以上版本)
  2. 一、准备工作
  3. 免责声明
  4. 二、一键双开脚本(推荐方法)
  5. 终端操作|创建脚本文件
  6. 1. 新建文件
  7. 2. 打开文件进行编辑
  8. 方法 1:用文本编辑器(推荐)
  9. 方法 2:用 VS Code(如果已安装)
  10. 方法 3:用终端内置编辑器 nano
  11. 3. 赋予执行权限
  12. 4. 运行脚本
  13. 三、完整脚本(支持双开、多开、更新后重建)
  14. macOS WeChat Multi Instance Script
  15. Usage:
  16. sudo ./wechat-2.sh auto --force
  17. sudo ./wechat-2.sh multi 3 --force # 多开 3 个副本
  18. sudo ./wechat-2.sh rebuild --force # 更新后自动重建所有副本
  19. 颜色
  20. 默认路径
  21. 查找已存在的小绿书副本
  22. 四、手动操作流程(可选)
  23. 五、多开操作(创建多个副本)
  24. 创建 3 个副本:小绿书 1、小绿书 2、小绿书 3
  25. 六、更新后自动重建副本
  26. 为什么需要重建?
  27. 使用方法
  28. 一键重建已存在的所有副本
  29. 效果
  30. 七、总结
  • 免费图片AI生成工具免费生成了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
  • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
  • 100+免费在线小游戏爽一把
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • 大模型开发环境搭建:Python 与 PyCharm 安装指南
  • 微信小程序自定义 tabBar 实现指南
  • GitHub Copilot VSCode 插件无法加载模型解决方案
  • 渐进式 AIGC 系统架构与功能特性:支持多模态大模型与 Agent 智能体
  • 2026 年 3 月全球 AI 前沿动态与技术突破
  • SpringBoot 无人机智能管控系统小程序设计与实现
  • 23 个 Python 实战项目与源码实例指南
  • Ubuntu 22.04 安装微信 Linux 官方 Universal 版
  • 腾讯 Claw 三款 AI Agent 产品横评:WorkBuddy、QClaw、CodeBuddy 选型指南
  • 腾讯 QClaw 本地 AI Agent 框架安装与使用指南
  • AI 前沿动态:OpenClaw 更新翻车、Luma AI 新模型及阿里芯片突破
  • 网络安全基础知识与防护指南
  • OpenClaw 本地 AI 智能体入门与实战指南
  • 文件上传同名冲突检测的前后端协同方案
  • Python 宠物美容服务预约档案系统设计与可视化
  • 支付模块开发概要与接口设计
  • 7 款主流 AI 编程工具评测与对比
  • WebGL 模型查看器:支持魔兽争霸与星际争霸模型预览
  • 白帽子漏洞挖掘实战经验:资产收集与常见漏洞利用
  • WebDAV 服务器快速部署指南:搭建个人文件共享平台

相关免费在线工具

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online

  • HTML转Markdown

    将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online

  • JSON 压缩

    通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online

  • JSON美化和格式化

    将JSON字符串修饰为友好的可读格式。 在线工具,JSON美化和格式化在线工具,online