
大概在两年前我第一次在 Windows 上卸载 Tabby点了 Uninstall、等进度条走完、点了 Finish然后觉得事情结束了。结果第二天在文件夹里右键时菜单最下面贴着一个“Open with Tabby”点下去弹窗提示找不到程序。再翻目录一看%APPDATA%里那个tabby文件夹还躺得稳稳的里面的 SSH 连接配置、主题、缓存日志一个不少。那会儿我才意识到Tabby 这种基于 Electron 的终端工具卸载从来不是一个 Installer 向导能搞定的事。如果你对 Tabby 的印象停留在“开源终端工具”“标签页很顺手”“内置 SFTP 和 SSH 管理”这些层面那你在清理它的时候大概率也会踩同样的坑。Tabby 从 1.0 版本开始积累了大量用户功能确实是同类里的第一梯队但它有个绕不开的物理事实——它是 Electron 应用。Electron 应用在系统里的存在方式和原生软件完全是两套逻辑程序本体是一处用户数据是另一处Windows 上还要外加注册表集成、右键菜单、协议关联这些“隐形附着物”。这篇文章不是什么抽象的理论科普而是把 Tabby 在三大平台卸载后留下的所有痕迹逐项找出来、讲清楚为什么会在、再用什么命令干净地清掉。适用对象是那些已经决定不用 Tabby、或者被它偷偷吃掉的磁盘空间惹烦了的人。如果你只是想换个终端、并不打算彻底告别看完也可以带着一份完整备份走将来想回来随时能无缝恢复。1. 为什么 Tabby 卸载不干净程序目录和数据目录从来不在一个地方先搞清楚“为什么会这样”后面动手的时候你才知道自己在删什么而不是跟着命令瞎敲。1.1 Electron 应用的“双目录”习惯是残留之源Tabby 不是用 C 或 Rust 写的原生应用它的外壳是 Electron——底层直接套了 Chromium 渲染引擎和 Node.js 运行时。这个架构带来的好处是跨平台一致、UI 写起来爽坏处是它运行起来像个小浏览器。浏览器用户应该都有体感卸载 Chrome 不会顺手删掉你的书签、历史记录和扩展因为这些数据根本就不在安装目录里。Electron 应用同理Tabby 的配置、缓存、日志、SSH 连接记录都被写进了操作系统的“用户数据区”而不是它自己的安装文件夹。卸载程序的本职工作只是把程序二进制拖走它没有权限、也不应该去动你的用户数据。这不是 Tabby 故意使坏VS Code、Slack、Discord、Obsidian 这些耳熟能详的 Electron 软件全都是一样的情况。区别在于Tabby 是终端工具它的用户数据目录里有服务器地址、SSH 私钥路径、登录用户名、历史的命令片段和会话状态。这几个东西的敏感程度比普通应用的书签高得多。所以对 Tabby 说“彻底卸载”不只是为了省磁盘空间更多是确保这些凭据和连接信息不会在一个你早就遗忘的角落里继续躺着。1.2 Tabby 在三大平台上的程序目录与数据目录具体到路径先说 Windows。程序本体默认安装在%LOCALAPPDATA%\Programs\tabby这类用户级目录下也就是你当前用户文件夹里的 AppData 下数据则写在%APPDATA%\tabby里。注意这两个位置长得像但是完全不同的两个环境变量APPDATA是 roaming 应用数据LOCALAPPDATA是本地应用数据。macOS 上程序在/Applications/Tabby.app用户数据在~/Library/Application Support/tabby另外还有~/Library/Caches/tabbyChromium 缓存和~/Library/Logs/tabby日志偏好设置文件则散落在~/Library/Preferences/下面。Linux 遵循 XDG 规范配置放在~/.config/tabby缓存放在~/.cache/tabby还有一些共享数据在~/.local/share/tabby。如果你的 Tabby 是通过 AppImage 用的程序本体只是一个.AppImage文件删文件非常轻松但上面那三个点目录依然会留下来。平台程序本体位置用户数据/配置位置Windows%LOCALAPPDATA%\Programs\tabby安装版%APPDATA%\tabby另有少量文件在%LOCALAPPDATA%\tabbymacOS/Applications/Tabby.app~/Library/Application Support/tabby、~/Library/Caches/tabby、~/Library/Logs/tabbyLinuxAppImage 文件或包管理器安装路径~/.config/tabby、~/.cache/tabby、~/.local/share/tabby上面的路径是整个清理工作的地图。按图索骥一条一条清就不会有“删完了但又不知道哪里还藏着”的焦虑。1.3 除了数据文件还有注册表、右键菜单和协议关联数据文件只是“明面残留”真正让人头大的是系统集成层面的东西。Windows 安装版 Tabby 在安装时或首次运行时会在注册表里写入右键菜单项常见表现是文件夹里多出“Open with Tabby”这样的入口或者桌面空白处右键多一项“打开终端”。同时它还会注册一个自定义 URL 协议类似tabby://用于从浏览器或其他工具唤起 Tabby。这些注册表项不属于安装目录也不在用户数据目录里而是位于注册表的 Shell 扩展区域。卸载程序一般不会主动删除它们——很多 NSIS 打包的应用卸载时甚至根本没写清理右键菜单的脚本。于是你删完应用菜单项还孤零零地挂在系统里点下去只会弹“找不到应用程序”。Linux 和 macOS 相对好一点不会在系统全局注册这类右键集成但 Linux 桌面环境里可能有.desktop文件macOS 也可能有 Launch Services 的索引缓存需要刷新。这两类属于“轻量残留”处理起来比 Windows 简单得多。2. Windows 清理链路结束进程、删数据、清注册表、收尾缓存Windows 是最多 Tabby 用户所在的平台也恰恰是残留最重的平台。建议按下面的顺序走不要跳步。先杀进程再走卸载然后清数据最后处理注册表这个顺序能避免很多莫名其妙的问题。2.1 第一步结束进程走正规卸载卸载 Electron 应用失败最常见的直接原因就是进程还活着。Tabby 的进程结构是主进程加上一堆渲染进程、GPU 进程你在任务管理器里会看到好几个Tabby.exe。如果你只是从设置里点卸载Windows 会因为文件被占用而弹错或者卸载器把主程序删了但Tabby.exe还在后台偷偷握着文件句柄。先打开任务管理器在“详细信息”标签页里按Tabby过滤确认没有进程或者直接用命令结束taskkill /IM Tabby.exe /F /T/F是强制结束/T是把该进程的整棵子进程树一起杀掉避免残留孤儿进程。之后走正规卸载路径按Win I打开“设置 应用 已安装的应用”找到 Tabby 点卸载。如果你的系统还保留着经典控制面板也可以运行appwiz.cpl在“程序和功能”里卸载。这一步只负责移除安装目录里的程序本体卸载结束后先别急着干别的紧接着做下面的清理。2.2 第二步删除用户数据残留程序删掉之后轮到数据。Windows 上 Tabby 的数据主要集中在%APPDATA%\tabby里面至少包含config.yaml你的全部配置主题、快捷键、SSH 连接列表、SFTP 站点、Chromium 内核产生的Cache和Local Storage、日志目录等。如果你已经确认不再需要这些配置直接用 cmd 删rd /s /q %APPDATA%\tabby rd /s /q %LOCALAPPDATA%\tabby/s代表递归删除所有子目录/q安静模式不询问。如果命令提示“找不到路径”说明目录本来就不存在当作正常结果就好不用慌。为什么要连着%LOCALAPPDATA%\tabby一起删Electron 应用有时会把 Crashpad 崩溃转储、更新缓存等非漫游数据放在本地应用数据目录。如果你只删%APPDATA%那一个下次排查时大概率又能翻出几十 MB 的残留。顺手再检查一下临时目录rd /s /q %TEMP%\tabby 2nul2nul只是把错误输出屏蔽掉目录不存在时不用看到红字报错。Windows 的 Temp 目录里有时候会有 Tabby 更新包解压残留和日志虽然不大但既然要彻底就一起收掉。2.3 第三步清理注册表右键菜单与协议这是“彻底卸载”整个流程里最容易翻车、也最关键的一步。Tabby 在注册表里最常见的落点有三处HKEY_CLASSES_ROOT\Directory\shell\Tabby——文件夹右键菜单HKEY_CLASSES_ROOT\Directory\Background\shell\Tabby——文件夹空白处右键菜单HKEY_CLASSES_ROOT\tabby——tabby://自定义协议先打开注册表编辑器Win R输入regedit按Ctrl F搜索Tabby把每一个命中项都看一遍。如果找到的是上面列出的 Shell 菜单项或协议项右键直接删除即可。用命令行也可以以管理员身份打开命令提示符reg delete HKCR\Directory\shell\Tabby /f reg delete HKCR\Directory\Background\shell\Tabby /f reg delete HKCR\tabby /f命令提示“操作成功完成”说明这个键存在、已经删掉提示“找不到指定的注册表项”则说明这个版本的 Tabby 没有写对应键直接忽略。这里有一个非常容易踩的坑所有删注册表操作先确认你删的确实属于 Tabby。很多软件的路径、名称里都可能带着 “Terminal” 或 “Tabby” 字样最好在注册表编辑器里先展开看看项下面的command值确认指向的是 Tabby 的 exe再动手。删错了第三方软件的东西恢复起来会非常麻烦。另外要明白一个机制HKEY_CLASSES_ROOT是一个合并视图它同时聚合了系统级注册表HKEY_LOCAL_MACHINE\Software\Classes和用户级注册表HKEY_CURRENT_USER\Software\Classes的内容。早期的 Tabby 安装版喜欢往机器级注册表写后来的版本更偏向用户级。这意味着你只用一个视图搜索可能看到的是合并结果删除时最好在HKEY_LOCAL_MACHINE\Software\Classes和HKEY_CURRENT_USER\Software\Classes两个位置分别搜一遍尤其是HKEY_CURRENT_USER\Software\Classes\Directory\shell这个路径很多新版本 Tabby 的右键菜单其实注册在这里。2.4 第四步清理缓存和临时文件重启系统注册表清完后回到文件系统层面兜底。我通常的做法是直接在资源管理器地址栏输入%APPDATA%、%LOCALAPPDATA%、%TEMP%在窗口右上角搜索框里输入tabby把查到的相关文件一并清掉。如果你希望更保险重启一次系统。重启有两个好处一是 Windows 会重新加载注册表并刷新桌面/资源管理器的 Shell 扩展列表右键菜单的变更立刻生效二是之前被占用而没删彻底的临时文件在重启后有第二次机会被清理。如果你连安装包都不打算留记得把下载目录里的Tabby-*.exe或Tabby-*.msi也一并删除。安装包本身是几百 MB 的 Electron 压缩包留着也是占地方。3. macOS 和 Linux 的清理路径目录不多但一个都不能漏很多人以为 Windows 是唯一需要大动干戈的平台其实 macOS 和 Linux 只是“看起来简单”该清的目录照样一个都不能少。这两个平台没有注册表这种集中式的“魔法仓库”但分散的用户数据目录更容易被遗漏。3.1 macOS废纸篓之外还要清掉四个目录macOS 上删除应用最“文明”的方式是把它从“应用程序”文件夹拖进废纸篓然后清空废纸篓。这步完成之后Tabby.app本体是没了但用户数据原封不动。Tabby 在 macOS 下的残留主要分布在四个位置~/Library/Application Support/tabby——主配置目录~/Library/Caches/tabby——Chromium 缓存~/Library/Logs/tabby——运行日志~/Library/Preferences/下所有以 tabby 命名的 plist 偏好设置文件如果你已经确定要跟 Tabby 分手用下面的命令组把这些目录和文件清掉pkill -f Tabby rm -rf $HOME/Library/Application Support/tabby rm -rf $HOME/Library/Caches/tabby rm -rf $HOME/Library/Logs/tabby rm -f $HOME/Library/Preferences/*tabby*.plist有一点要提醒rm -rf没有后悔药执行之前建议先用ls或 Finder 确认一下这些目录确实存在、确实是 Tabby 的数据。我在实际中见过挺多用户因为复制粘贴命令时手滑把环境变量拼错结果删掉了意料之外的目录。macOS 上还有个容易被忽略的地方Spotlight 索引可能短暂保留 Tabby 的搜索记录或文件索引但不会造成实际影响过段时间索引刷新后自然消失不用特意去管。3.2 Linux按安装方式卸载按 XDG 规范清数据Linux 的清理方式完全取决于当初怎么装的。先说卸载程序本体如果你用的是 AppImage那最简单直接删除那个.AppImage文件rm ~/Downloads/Tabby-*.AppImage如果当初用系统包管理器装的按对应发行版回退# Debian / Ubuntu sudo apt remove tabby # Fedora sudo dnf remove tabby # Arch sudo pacman -R tabby这里有个小问题不同发行版仓库里的包名可能不是tabby比如某些仓库叫tabby-terminal。卸载前先查一下dpkg -l | grep -i tabby看到确切包名再卸载不然 apt 会直接报错“找不到这个包”显得很懵。如果你用的是 Snap 或 Flatpak对应命令是snap remove tabby和flatpak uninstall tabby数据目录分别在~/snap/tabby和~/.var/app/对应的路径下。卸完程序本体之后数据目录照例清理rm -rf ~/.config/tabby rm -rf ~/.cache/tabby rm -rf ~/.local/share/tabby另外很多 Linux 桌面环境会在安装时生成.desktop启动器文件如果你之前用过 Tabby 的“在终端中打开”类集成检查一下rm -f ~/.local/share/applications/tabby.desktop rm -f ~/.config/autostart/tabby.desktop # 如果把它设置成了开机自启后者是个很隐蔽的残留如果你曾经在 Tabby 的设置里开过“开机启动”类选项对应的.desktop文件会躺在~/.config/autostart/里卸载后还在系统每次开机都会尝试解析一个不存在的程序。3.3 备份 vs 删除动手之前想清楚 config.yaml 要不要留着上面几节我只讲了“全删”的路线但卸载软件这件事永远存在一个后悔药问题。Tabby 的全部灵魂都浓缩在那个config.yaml里——你的服务器列表、SSH 连接会话、SFTP 站点、主题、快捷键、窗口布局都在里面。如果你只是暂时想换一个终端工具、并不是永久抛弃 Tabby我强烈建议先备份再做任何删除操作。备份就是把这个配置目录原样拷出去Windows把%APPDATA%\tabby整个拷贝到 U 盘或外部硬盘macOS拷贝~/Library/Application Support/tabby整个目录Linux拷贝~/.config/tabby整个目录以后如果反悔了装回 Tabby 再把目录原路放回去所有东西都会回来包括你那些辛辛苦苦建立的 SSH 连接。这个过程不需要重新配置任何东西。不过备份之前要想清楚一个隐私问题config.yaml里可能包含服务器地址、用户名、私钥路径这类敏感信息。如果你要把它备份到网盘记得先打包加密再上传别裸着一个 YAML 扔进云端。4. 卸载自检三平台各出一份检查清单清理工作完成之后不要急着宣布胜利。用几分钟做一轮自检能避免“过两天又发现右键菜单里冒出个 Tabby”这种尴尬。4.1 进程层面检查先确认没有进程残留。Windows 上打开 PowerShell 输入Get-Process | Where-Object { $_.Name -like *Tabby* }没有任何输出就对了。macOS 和 Linux 用ps aux | grep -i tabby | grep -v grep同样是什么都没有才是干净的。如果还有输出说明有进程没杀干净先处理掉再继续不然它可能在你清理目录时偷偷重建文件。4.2 文件系统层面检查文件系统的检查思路是回到第一节说的那几个数据目录位置看看它们是否还存在。如果目录已经删光了这一步是多余的但如果你用的是图形界面删除或者中途出过错这步能补漏。Windows 上打开资源管理器在地址栏分别输入%APPDATA%、%LOCALAPPDATA%在搜索框里搜tabby确认无结果。Linux 和 macOS 用一条查找命令把用户目录扫一遍find ~ -iname *tabby* 2/dev/null | head -50macOS 还可以用 Spotlight 的mdfindmdfind kMDItemFSName *tabby*c输出为空说明文件层面的清理基本到位。4.3 右键菜单和默认程序测试Windows 上做两个实测在桌面空白处右键在任意文件夹里右键确认菜单里没有 “Open with Tabby” 类似的项。如果你之前见过“在终端中打开”这种中文菜单项重点看看它还在不在。再查一遍注册表。打开regedit按Ctrl F搜Tabby看到 Shell 右键菜单相关项或协议相关项就说明有漏网之鱼。这里要注意搜索可能会命中一些历史记录或其他软件的注册信息判断标准很简单路径包含Directory\shell或Directory\Background\shell或是一个独立的顶层协议键HKCR\tabby且 command 指向 Tabby 可执行文件就删否则不用动。5. 清理之后“又复活”的三种情况及补救办法卸载过程中遇到的“灵异事件”绝大多数就三类。我一个个说清楚原因以后再碰到类似的 Electron 软件也能举一反三。5.1 卸载重装后配置居然还在这是最常见的。很多人在 Windows 上卸载 Tabby 之后过了一段日子想再试一次新版装上之后一打开熟悉的主题、熟悉的 SSH 连接列表全回来了还以为是官方故意的“云同步”。其实哪有什么云就是第一节说的%APPDATA%\tabby没删新版安装程序看到目录还在就直接复用旧配置。补救很简单先卸载程序再回到2.2节把那几个目录删一遍。顺序不要反如果先删目录再卸载程序某些安装器又会在卸载时写回些许数据反而留下尾巴。5.2 右键菜单删了之后重新出现删完右键菜单项隔天又冒出来了这大概率不是 Tabby 干的而是你清理的层级不对或者电脑上装了什么右键菜单管理工具在系统启动时又把它加了回去。具体来说右键菜单可以注册在机器级注册表也可以注册在用户级注册表。你删了HKEY_CLASSES_ROOT\Directory\Background\shell\Tabby但真正的项可能在HKEY_CURRENT_USER\Software\Classes\Directory\Background\shell\Tabby这两个其实是同一个菜单的不同来源。所以我在 2.3 里强调两个位置都要搜一遍不是小题大做。还有一种可能是系统里有第三方右键菜单清理工具它把 Tabby 的菜单项缓存住了。这种时候先确认来源再动手别误删其他软件的菜单。5.3 卸载时报“文件被占用”或者卸载后进程还活着Electron 应用的多进程架构决定了它一定有子进程而且子进程不一定挂在你肉眼能看到的主窗口下面。如果你没留意任务栏托盘没准 Tabby 的主进程已经退到托盘继续运行任务管理器却因为名字相似而漏看。遇到卸载失败不要硬点“重试”先打开任务管理器在“详细信息”标签里找所有Tabby.exe全部结束如果结束不了就用taskkill /IM Tabby.exe /F /T然后再重新走卸载流程。如果还不行检查一下杀毒软件是不是在后台扫描 Tabby 的目录导致句柄被锁暂时退出或加入排除项再试。5.4 顺手排查其他 Electron 应用的残留习惯经历过 Tabby 的完整清理之后我养成一个习惯每清理一台机器上的 Electron 应用都会顺手看一眼它对应的config和cache目录都在哪然后按同样思路处理。像 VS Code、Slack、Discord 这类应用卸载后也都有各自的%APPDATA%残留目录只是敏感程度不如终端工具这么高。我个人的操作习惯是卸载前的最后一步一定先把配置目录压缩打包放到一个固定的备份文件夹然后才执行删除。这个习惯帮我避免了很多次的“重新配置半小时”的窘境。对 Tabby 来说那个config.yaml一旦删掉你所有的 SSH 连接记录就真的灰飞烟灭了而只要备份还活着所谓“彻底卸载”就只是一个随时可以后悔的状态。