
通用“三板斧”从图标到卸载的完整思路以后遇到任何想卸载但不知道包名的软件按这个流程走基本都能搞定。 第一板斧在系统安装包中搜索关键词目的快速确认软件是否通过系统包管理器APT安装。bashdpkg -l | grep -i 关键词关键词可以是软件英文名、中文拼音甚至部分字母比如todo、wechat、code。如果输出中包含ii开头的行说明这个软件是 APT 安装的冒号后或末尾的名称就是包名。示例dpkg -l | grep -i todo→ 找到io.elementary.tasks 第二板斧查找 Snap / Flatpak 包有些软件是从 Ubuntu 软件商店Snap或 FlathubFlatpak安装的APT 搜不到需要分别检查bashsnap list | grep -i 关键词 flatpak list | grep -i 关键词如果看到结果对应的卸载命令是Snapsudo snap remove 包名Flatpakflatpak uninstall 包名 第三板斧从启动器文件中反查最准确适用于上述命令都搜不到或不确定软件名的场景。步骤 1找到对应的.desktop启动器文件bashgrep -r -i 中文名 /usr/share/applications/ ~/.local/share/applications/ 2/dev/null系统级启动器在/usr/share/applications/用户级启动器在~/.local/share/applications/优先级更高通常由用户自行添加或 AppImage 生成步骤 2查看.desktop文件内容获取实际运行命令bashcat /usr/share/applications/找到的文件名.desktop重点关注Exec行它代表软件的真实启动命令。步骤 3用dpkg -S反查命令属于哪个包bashdpkg -S $(which Exec后的命令)或直接指定路径bashdpkg -S /usr/bin/命令返回结果格式为包名: 文件路径冒号前就是准确的包名。如果dpkg -S查不到说明该命令不是 APT 包提供的可能是 AppImage、手动解压版、或源码编译安装的程序。此时检查是否为 AppImage直接删除.AppImage文件并清理快捷方式检查是否在/opt/或~/目录下删除对应文件夹检查是否通过脚本安装查看安装脚本或直接删除目录并清理环境变量✅ 最终卸载确定包名后执行bashsudo apt purge 包名 sudo apt autoremove 流程图总览text想卸载一个软件但不知道包名 │ ▼ ┌───────────────────────┐ │ 用 dpkg -l | grep │ ← 第一板斧APT 包 └───────────────────────┘ │ ❌ 没找到 ▼ ┌───────────────────────┐ │ 用 snap list / flatpak│ ← 第二板斧Snap/Flatpak └───────────────────────┘ │ ❌ 没找到 ▼ ┌──────────────────────────────────────────┐ │ grep -r 中文名 /usr/share/applications/ │ ← 第三板斧反查启动器 └──────────────────────────────────────────┘ │ ▼ ┌───────────────────────┐ │ cat xxx.desktop │ 查看 Exec 获取命令 └───────────────────────┘ │ ▼ ┌───────────────────────┐ │ dpkg -S $(which 命令) │ 反查包名 └───────────────────────┘ │ ▼ ┌───────────────────────┐ │ sudo apt purge 包名 │ 卸载 └───────────────────────┘ 额外技巧查找非 APT 安装的程序如果dpkg -S查不到还可以用which或type查看命令的实际位置bashwhich 命令 type 命令如果指向/home/用户/...可能是用户目录下的独立程序如果指向/opt/...可能是第三方解压版如果指向/snap/...那是 Snap 版已在第二板斧中覆盖如果是 AppImage直接删除文件即可。如果不想留下快捷方式残留手动删除~/.local/share/applications/下对应的.desktop文件并运行update-desktop-database ~/.local/share/applications/刷新菜单。