如何在 Mac 上卸载 Bdash
先保存 SQL 查询,妥善备份连接信息,再删除 Bdash 数据。本篇以 Mac 下载版为主,Homebrew 渠道在下文单列。
退出并移除 App
保留连接的数据库、服务端账号和 SQLite 文件,删除本地 Bdash 目录前分别备份。
从 Bdash 的退出入口关闭 App。打开系统设置 › 通用 › 登录项与扩展,如果有属于 Bdash 的登录项,关闭它。完成备份后,在访达把 /Applications/Bdash.app 移到废纸篓,先留着废纸篓,确认需要的数据已保存。
项目说明。
检查本地数据
在访达按 Shift + Command + G,逐条打开完整路径,先把要留的内容复制到其他目录,再决定是否把这一项移到废纸篓。下面包含实测记录和当前 Homebrew cask 的目标,某个路径不存在时不用创建它,带 * 的条目是匹配范围,需要逐个检查实际文件,不是一个字面文件名。
| 位置 | 内容与处理 |
|---|---|
~/Library/Preferences/io.bdash.plist |
偏好设置,要恢复设置时保留 |
~/Library/Logs/Bdash |
缓存、日志或网页状态,退出 App 后可按需移走 |
~/Library/Application Support/Bdash |
本地数据或设置,先备份,再决定是否移走 |
~/.bdash |
本地数据或设置,先备份,再决定是否移走 |
~/Library/Saved Application State/io.bdash.savedState |
窗口恢复状态,不再需要时可移走 |
用 Homebrew 安装时
先卸载而不执行 zap。
brew uninstall --cask bdash
这条命令移除 cask 管理的 App,不会执行上面的 zap 数据清单。
直接执行下面的命令会按 cask 的整个 zap 清单删除数据,不会读取 Mole 的勾选状态。只有备份并确认这些目标都可以移除时才用。
brew uninstall --cask --zap bdash
当前 zap 目标为 ~/.bdash、~/Library/Application Support/Bdash、~/Library/Logs/Bdash、~/Library/Preferences/io.bdash.plist、~/Library/Saved Application State/io.bdash.savedState。
zap 会移走以上目标,包括其中的设置或用户数据,要保留任一项时使用不带 zap 的命令。当前 cask。
检查结果
ls -ld '/Applications/Bdash.app'
pgrep -ifl '/Applications/Bdash[.]app/'
列出 App 路径表示本体仍在,No such file or directory 表示这个路径不在,Permission denied 则没有完成检查。此命令只检查本体所在位置,不证明其他位置没有副本、后台服务或用户数据。
pgrep 列出结果表示仍有命令行匹配这个 App 路径的进程,没有输出只表示没有这种匹配,不能证明独立助手或其他安装副本都已退出,报错时这一步未确认。
Mole 会列出什么
~/Library/Preferences/io.bdash.plist默认勾选。~/Library/Application Support/Bdash列出供确认,默认不勾选。
其中的 ~/Library/Application Support/Bdash/Cache、~/Library/Application Support/Bdash/Code Cache、~/Library/Application Support/Bdash/GPUCache 是单独列出的缓存行,默认勾选,支持目录本身仍需确认。
这些默认状态以关闭「卸载时一并移除数据和配置」为准,这个选项默认关闭,开启后会勾选符合条件的待确认 App 数据,共享数据和受保护项目仍按原有边界单独确认。Mole 只有在整个 zap 范围通过检查时才会调用 Homebrew zap,未勾选项、共享路径、超出审查范围的路径或无法支持的指令都会阻止 zap,已选残留仍走 Mole 自己的删除流程。
这次检查覆盖了什么
卸载使用源码构建的 Mole,首启扫描只覆盖部分路径,不证明应用可能生成的全部文件。
只验证了首次连接界面,官方 App 和审查路径移走,没有验证数据库连接、执行查询、凭据或更新扫描。
