我在 Mac 上删除了一个应用,为什么它的文件还在?
你把一个应用拖到废纸篓并清倒了废纸篓,但空间没有回来,或者这个应用的文件夹仍然出现在你的资源库里。
一句话:应用本身只是程序。你使用期间它保存下来的东西(设置、缓存、它的数据,有时还有一个后台辅助程序)都在 ~/Library 里,应用删掉之后它们还在。大多数残留都很小;聊天、视频、游戏、虚拟机和开发类应用则可能留下好几 GB。找以应用名称或其 bundle ID(例如 com.company.app)命名的文件夹。
应用会在 Mac 上的哪些地方留下文件?
在“访达”中选择“前往”›“前往文件夹”(Shift-Command-G),逐一打开以下位置:
~/Library/Application Support:应用的数据,通常在一个以应用名称命名的文件夹里。~/Library/Caches:缓存,如果应用重新装回来,它会重新生成。~/Library/Preferences:设置,是一个以 bundle ID 命名的.plist文件。~/Library/Containers和~/Library/Group Containers:App Store 应用保存的所有内容。~/Library/Saved Application State、~/Library/Logs、~/Library/WebKit和~/Library/HTTPStorages:窗口状态、日志和网页数据。~/Library/LaunchAgents、/Library/LaunchAgents和/Library/LaunchDaemons:会自行启动的辅助程序。
怎样找到某个应用的残留文件?
如果应用还装着,先取得它的 bundle ID:
osascript -e 'id of app "Safari"'
然后在资源库中搜索这个 ID 或应用名称:
find ~/Library -maxdepth 3 -iname "*safari*" 2>/dev/null
把 safari 换成名称或 ID 的一部分。有些文件夹需要给“终端”开启“完全磁盘访问权限”(“系统设置”›“隐私与安全性”)。
删除它们安全吗?
- 缓存、日志和已存储的窗口状态:安全。
- 偏好设置:如果你不会再用这个应用,就是安全的。重新安装后,它会以默认设置启动。
- Application Support 和 Containers:先看一看。里面可能有你的项目、聊天记录、游戏存档,或者由应用管理的资料库。清倒废纸篓之后,这些就没了。
- 其他应用也在用的文件夹:别动。同一开发者的应用常常共用一个文件夹。
把它们移到废纸篓,而不是在“终端”里直接删除,这样需要的东西还能放回原处。
为什么删掉的应用还在后台运行东西?
它的辅助程序是 LaunchAgents 或 LaunchDaemons 文件夹中的一个 .plist 文件,移除应用并不会把它一起移除。到“系统设置”›“通用”›“登录项与扩展”中查看,或者查看上面列出的文件夹。如果它指向的程序已经不在了,这个文件也可以移到废纸篓。
怎样把应用连同它留下的一切一起移除?
如果应用自带卸载程序,就用它:它知道安装器把什么放在了哪里。否则先退出应用,把它从“应用程序”拖到废纸篓,再清理上面那些文件夹。对于用 .pkg 安装的应用,开始之前先看看安装器添加了什么。