相信Mac OS X 上大部分软件的拖拽安装方式给很多刚刚从 Windows 来到 Mac OS X 上的朋友带过来惊喜,他们发现原来软件安装也可以如此简单!但是,在卸载一个软件的时候,对于熟悉了 Windows 下 Uninstaller 的同学又要嘀咕了,这样是否直接删除 App 就可以做到完整卸载了呢?本篇文章,就从 Mac OS X App 的基本结构出发,带大家认识 Mac OS X App,从而了解如何卸载 Mac OS X App。
- 1: Mac OS X App 基本常识。我们平常接触的大部分 App,其实是一个文件夹结构,只不过,Mac OS X 让它看起来是一个单独的文件而已。通过右键点击一个 App,在菜单中选择 Show Contents,则可以浏览 App 的内部结构。通常的 App 目录结构如下:
_CodeSignature, CodeResources, 一般为 Mac App Store 上架程序所包含。里面含有数字签名,以防止非法篡改。
Frameworks, 一般放置了此程序所使用的第三方 Framework (使用的 Apple Framework 都包含在你的系统里),那些支持 Growl 提醒的程序,在这个文件夹下必然包含一个 Growl Framework. 某种程度上,可以理解为 Windows 程序中的 dll 动态链接库。
Info.plist 包含了一个程序的基本信息,比如最低系统版本要求,版本号,Copyright,等等标示。也可能包含程序的类型信息,比如这个文件如果含有一个 LSUIElement 并且值为 TRUE 的片段,则这个程序在执行后,不会在 Dock 上显示图标或图标下有表示此程序正在运行的小亮点。(当然,通过修改一个程序的 plist,添加 LSUIElement,则可以让一个程序运行时不在 Dock 上显示图标)。plist 是一个标准的 XML 文档,可以用任何文本编辑器修改。
MacOS 文件夹,则是包含了此应用程序的真正的可执行文件(类似 Windows 下的 exe 文件),当然,一些程序可能包含不只一个的可执行文件。
PkgInfo 是一个可选的,8个字节长度的文件,可保存程序类型和创建者签名。(当然这些可以写在 Info.plist 中)。这个文件通常包含四字节的程序类型信息(通常为 APPL)和四个字节的签名信息,比如 System Preferences.app 的 PkgInfo 就是 APPLsprf。
Resources,顾名思义,就是资源文件,包含图标,图片,语言包,以及其它各种文件,这个没有严格的限制。
扯了这么多,目的首先是让大家对 App 有一个最基本的了解,其次就是说明,一个 App 可不象表面上看起来的一个文件那么简单,它内部包含了好多的文件,而其中的某些文件会随着程序的运行,复制进你的系统,从而称为使你不能够完整卸载某程序的绊脚石。
2: Mac OS X App 的安装方式。Mac App 的安装方式,常见的有,拖拽一个 App 文件到 Applications 文件夹完成安装。还有一种是后缀为 .pkg 文件的安装文件,这类安装方式是通过 Mac OS X Installer 解开 pkg 文件,按照 pkg 文件中的 BOM 文件的指令,将 pkg 文件中的内容安装到系统不同的位置上去。还有一类,.mpkg 格式的安装文件,这个和 .pkg 安装文件过程类似,只不过 .mpkg 指向的是一组 .pkg 文件的组合而已。当然,还有通过 MacPorts 的终端安装方式,不在这篇文章的讨论之列。那么下面的问题就是不同的安装方式,对于卸载一个 App 是否有不同的影响?
3: Mac OS X App 的卸载。知道了 App 的基本结构,和基本安装方式,则我们就要针对不同的安装方式,来规划我们的卸载工作,具体来说,一本分为一下步骤,
1, 安装程序之前,要仔细阅读程序提供者的资料,或者 App 的说明文档,这些文档中,一般都会含有如何卸载 App 的指南。引用论坛 DEC 大哥的一句话,”安装一个程序之前,你要先知道它如何卸载”。很多程序比如 Adobe Creative Suite,Microsoft Office 都会带有相应的卸载程序。XCode 这类,则会提供一个终端命令。
2, 通过 Google 搜索,一般都可以找到如何卸载程序的方法。关键字很简单 Mac OS X ****(应用程序名) Uninstall / Remove, 一般都会找到你想要的答案。
3, 通过第三方的卸载软件,比如 Clean My Mac,AppZapper (光枪),都可以做到准完美卸载。
4, 通过手动使用终端 find 命令,或者系统内置的 spotlight 搜索应用程序名,找到相关文件,删除进行卸载
5, 对于一些使用 pkg, mpkg 安装的,却又没有明确告知如何卸载的 App,如 Aperture,iLife Suite,则可以参考我的另一些文章,Mac OS X 终端命令讲解系列之一: lsbom, Mac OS X 系统类软件讲解系列之二: Pacifist,Suspicious Package,一个好用得 .pkg/.mpkg QuickLook 插件
6, 通过 App Store 安装的应用程序,其实都是通过类似 pkg 方式进行安装的,但是对于这些没有留下 pkg 安装文件的程序来说,可以参考第七条
7, 注意观察一个 App 的运行方式,记住一些 App 常用的路径名称,可以帮助你完美卸载一个程序。
综上,1,2,3,4,5,6 说的已经狠明确了,不再累述,关键是第 7 条,需要一定的 Mac OS X 使用经验。这里简要叙述一下 Mac OS X App 常用的文件夹,
/Applications,这个不必多说,99% 的应用程序在下载后,都会有一个直接提示让你拖拽 App 到 /Applications 文件夹。其实这个不是强制的位置,大部分 App 可以在任何权限适合的文件夹下运行。
~/Library/ (~代表你的用户主目录,用户级别,每个用户都有一套,),用来存放用户偏好设置,App 偏好设置,缓存,App 数据文件等。我们大部分时间需要注意的是, 这个文件夹下与应用程序同名的文件夹,比如 QIM,在此文件夹下有一个相同名称的文件夹,用来存放字典文件等。
~/Library/Preferences/ (用户级别,每个用户都有一套,) 文件夹,这个文件夹下是各个程序的偏好设置文件,数据记录文件,卸载一个 App 时,这里一般都会有一个以上的相关 plist 文件。这些 plist 文件,一般以 com.***(应用程序提供商).***(应用程序名称).plist 的格式出现,所以,按照应用程序名称或者提供商名称,可以很容易的找到应用程序遗留文件. 以我的程序为例,他们都是以 com.ibuick 开头,比如 com.ibuick.iChecker.plist, com.ibuick.DesktomMonitor.plist。
~/Library/LaunchAgents/ (用户级别,每个用户都有一套,) 文件夹,此文件夹一般存放一些应用程序的附加程序,比如 Folx 能够感知 Safari 下载动作,1Password 能够感知登录输入密码动作,都是靠这里的 plist 文件来配置。臭名昭著的 Google 紫铜后台更新程序的配置文件,就在这里!!!(其相应的可执行文件,在 ~/Library/Google 文件夹下)
~Library/Application\ Support/ 一般用来存放跟应用程序相关的支持数据(用户级别,每个用户都有一套,),应用程序的附加程序(比如 Helper 程序,插件等等),应用程序的备份文件 (比如 MacJournal 的所有日志备份文件等)。一般都是跟应用程序(或者开发商)同名的文件夹,找到一看便知。
~Library/Internet\ Plug-Ins/ 用来放置与 Safari 有关的 App 插件,前面说过的 Folx, 除了通过 LaunchAgents 里面的 plist 配置启动感知 Safari 下载动作的文件外,在这里一样有一个指向 Folx.app 内部 Resources 文件夹下 FolxNetscapePlugIn.plugin 文件的替身链接 ,用于处理 Safari 下载动作。这个其实就是在 Folx App 启动后,由 App 自行拷贝而来。这个文件夹下也存放着此用户为 Safari 安装的其它扩展,比如 ClickToFlash 等等。
~/Library/Contextual\ Menu\ Items/ 用来放置一个 App 像系统添加的上下文菜单 (右键菜单), 比如安装 SpeedDownloads 后,右键点击一个下载链接,会出现各种 SpeedDownloads 右键菜单,就是在这个文件夹下。
~/Library/Input\ Methods/ 则是此用户安装的输入法程序
~/Library/PreferencePanes/ 所有第三方的系统偏好设置 (System Preferences) 控制面板都是安装在这里
~/Library/Services/ 很多程序会向右键,或者 服务(Service) 菜单添加项目,则他们会把菜单项拷贝到这里
~/Library/Widgets/ 你安装过的 Dashboard Widget 小应用都会在这里找到
~/Library/Receipts/ 下,很多应用程序在安装后,会在这里留下 Receipt 存根或者 BOM 文件,对于帮助完整卸载 App 很有帮助
一部分部分 ~/Library 下介绍过的文件夹,在 /Library 下都能够找到相对应的目录,区别在于 /Library 时表示全局级别的配置,换句话说,同样的配置从 ~/Library 拷贝到 /Library 相应的文件夹下,则会影响这个 App 在所有用户中的运行状态,运行方式。这就是 Mac OS X 系统的另一个概念,分级隔离。
当然,/Library 下有 ~/Library 下不存在的文件夹,也需要注意:
/Library/LaunchDaemons 文件夹,这个的作用与 /Library/LaunchAgents/ (~/Library/LaunchAgents/) 类似,只不过,LaunchAgents 一般代表了有用户界面的后台自动运行程序,而 Daemons 则代表了那些没有用户界面的后台运行程序。
但一定要注意,/Library 下的所有更改将会波及整个所有用户,必须非常小心,否则会造成难以预料的后果。
/System/Library 则是系统级别用用程序配置,数据的所在地,除非你特别明白每一个项目的作用,否则不要进行任何修改,一旦误操作,将会对系统产生致命后果。
大部分标准的,符合 Apple 应用程序规范的 App,基本都会在上述文件夹中的某一些内部留下痕迹,所以只要牢记这些文件夹,以及每个文件夹的作用,手工完全清除 App 是非常方便且安全的。
转自:http://ibuick.com/buick2011820/index.php/archives/mac-os-x-app-uninstall
相关推荐
AppCleaner 2.3是一款专为Mac操作系统设计的高效应用程序卸载工具。在Mac上,简单的删除应用程序并不总是足够的,因为很多应用在安装时会留下各种支持文件、配置文件和缓存,这些残留文件可能会占用硬盘空间,甚至...
mac os下的卸载工具clean app,精致好用的软件,只适用于mac os
### 纯净卸载Paragon在Mac环境下的方法及注意事项 #### 背景介绍 随着越来越多用户转向Mac OS平台,对系统兼容性的需求也日益增加。Paragon是一款广泛使用的第三方工具,它能帮助Mac用户实现对NTFS格式磁盘的读写...
在Mac OS X操作系统中,获取...以上两种方法都可以帮助你在Mac OS X环境下方便地获取屏幕上的颜色RGB值,根据个人喜好和需求选择合适的方法即可。无论是进行设计工作还是进行颜色校准,这些工具都能提供必要的帮助。
"Mac os系统下安卓(APK)安装器"就是这样一个工具,它专为了解决这一问题而设计,使得用户能够在Mac上便捷地管理和运行Android应用。 APK是Android应用程序的包文件格式,相当于iOS中的.ipa文件。APK文件包含了...
App Cleaner - 删除应用留在Mac OS X上的服务文件及卸载应用的最佳应用程序。 卸载不需要的应用,删除应用的服务文件。确保它们不会占用您Mac上的宝贵空间。 主要价值 – 通过以下方式加速您的Mac: 删除占用性能...
helloMac OS X平台以读写权限挂载NTFS驱动器用途Mac上插入NTFS格式的移动硬盘默认挂载只能读,不能写这个程序脚本将NTFS驱动器的系统默认挂载点卸载,以rw权限重新挂载用法插入NTFS移动硬盘到你的Mac打开Terminal....
首先,我们需要了解的是,Mac OS操作系统中的应用程序卸载方式与Windows系统有所不同。在Mac上,简单的拖到废纸篓并不能完全卸载一个程序,因为它可能在系统中留下一些残留文件。因此,我们需要采取更深入的步骤来...
在Mac OS上,应用通常以.app的形式存在,这是一个封装了所有必要文件的文件夹结构,用户可以直接双击运行。Kext Helper可能是专门设计来帮助用户安全、简便地安装和管理kext的第三方工具,其版本b7可能代表这是该...
作为一款专注于Mac清理的工具,AppCleaner与各版本的Mac OS兼容,无论你是使用较旧的OS X还是最新的macOS,都能顺畅运行。同时,开发者会定期更新软件,以适应不断变化的系统环境和新的应用需求。 综上所述,App...
在苹果的Mac OS X操作系统中,虽然大部分应用程序的安装过程相对简单,但卸载却并不总是如此直观。有些软件可能在系统中留下残余文件,占用硬盘空间,甚至影响新版本的安装或系统的稳定运行。为了解决这个问题,"App...
总之,"mac移除軟體工具",特别是AppCleaner,是一个优化Mac OS用户体验的重要工具,它使得卸载应用程序变得更加简单和彻底,有助于保持系统的高效运行和良好状态。对于不熟悉Mac OS卸载机制的用户,这样的工具可以...
"BC4到期卸载重装.app.zip" 提供的正是这样的解决方案,它包含了Beyond Compare 4(简称BC4)的Mac OS版本,这是一款备受赞誉的文件和文本比较工具。 Beyond Compare,由Scooter Software公司开发,以其高效、精准...
它支持多种操作系统,包括Windows、Linux和Mac OS X等。使用Wireshark,用户可以查看网络中的每一个数据包,包括其源和目标地址、端口号、协议类型以及数据内容。 在Wireshark中,你可以选择特定的网络接口进行...
首先,对于Mac软件的安装,重要的一点是了解Mac不支持Windows下的.exe格式文件,因此需要下载专门为Mac设计的.dmg或.pkg格式的安装包。当下载完成后,只需双击安装包,桌面上会生成一个类似硬盘图标的文件。同时,会...
AppCleaner是一款专为苹果OS X系统设计的软件卸载工具,它能够帮助用户彻底清除应用程序及其相关的配置文件、缓存和其他残留数据。在Mac系统中,虽然直接将应用图标拖到废纸篓可以完成基本的卸载,但这种方法往往不...
sortDownloads.app ##About sortDownloads.app 是一个非常小的 Mac OS X 应用程序,它会自动对你的 ~/Downloads 文件夹进行排序。 每个文件都将移动到一个与您下载它的网站的域名称相同的目录中。 示例:如果您从该...
**Mac OS X安装指南设置指南** Mac OS X,也被称为 macOS,是苹果公司为其桌面和笔记本电脑设计的操作系统。这份指南将深入探讨如何在Mac上进行初始安装和配置,以及如何利用Homebrew来管理和安装软件。 ### 1. **...
**Mac OS X Sierra CH340/341 驱动详解** 在Apple的Mac OS X Sierra操作系统中,有时用户会遇到与CH340或CH341系列USB转串口芯片相关的通信问题。这些芯片常用于各种USB转TTL、USB转RS232适配器和模块中,例如...
至于压缩包内的“Kext Helper b7.app”,这很可能是Kext Helper软件的版本b7,.app后缀表示这是一个Mac OS X的应用程序文件。这个文件包含了程序的所有必要组件,用户只需将它解压并放置到适当的位置(通常是/...