在使用MacOS时,可能会遇到这么集中情况:卸载过应用程序,但卸载过程中出现问题或者未能完全清除所有相关文件,残留的文件可能导致图标无法从启动台中删除;或者某些应用程序可能需要管理员权限才能被删除,如果没有足够的权限,可能无法成功删除图标;或者启动台中的数据库可能出现问题,导致无法正确显示或删除图标;或者启动台的缓存可能损坏或过期,导致图标无法被正确处理;或者有时候系统错误或者软件问题可能导致启动台图标无法正常删除。
下面介绍一种彻底的删除顽固图标的方式(完整操作步骤)
第一步:找到数据库位置
-
打开"访达"
-
按 Command + Shift + G
-
输入:/private/var/folders
-
在这个文件夹内搜索:com.apple.dock.launchpad
-
进入找到的文件夹中的 db子文件夹
第二步:打开终端并进入数据库目录
-
打开"终端"(应用程序 > 实用工具)
-
输入以下命令进入db文件夹(路径根据你实际的替换):
bash
cd /private/var/folders/xx/xxxxx/0/com.apple.dock.launchpad/db
**快捷方法**:你也可以直接把db文件夹拖拽到终端窗口,系统会自动填入路径。
第三步:查询图标信息
在终端中输入以下命令查看所有图标:
bash
sqlite3 db "select item_id,title from apps;"
你会看到类似这样的输出:
201|卸载 Adobe Photoshop 2020
202|卸载 Adobe Photoshop (Beta)
203|Adobe Premiere Pro 2020
找到包含"卸载 Adobe Premiere Pro 2020"的那一行,记住前面的数字(item_id)。
第四步:删除指定图标
使用以下命令删除(将ID替换为你查询到的数字):
bash
sqlite3 db "delete from apps where item_id=296;" && killall Dock
或者按名称删除(以卸载Adobe Premiere Pro 2020为例):
bash
sqlite3 db "delete from apps where title='卸载 Adobe Premiere Pro 2020';" && killall Dock
第五步:重启Dock
如果上面的命令没有自动重启Dock,手动执行:
bash
killall Dock
一键解决方案
如果你觉得上面步骤太复杂,可以直接使用这个简化命令:
bash
sudo /usr/bin/sqlite3 "$(find $TMPDIR/.. -name com.apple.dock.launchpad 2>/dev/null)/db/db" "delete from apps where title='Adobe Premiere Pro 2020';" && killall Dock
注意事项
-
执行命令时需要输入管理员密码
-
命令区分大小写,确保名称拼写正确
-
如果提示"command not found",可能需要先安装sqlite3
-
操作前建议备份重要数据
执行完毕后,应用程序的残留图标就从启动台消失了!