macOS中该如何卸载安装完的pkg软件

mac并没有像win一样提供什么快捷删除方式,我们只能找到pkg安装后产生的文件,然后删除它。

方法一:

mac会维护一份pkg安装历史,只要找到那个文件夹,我们就可以搞定了。如osx 10.8以上系统,pkg历史安装列表在/private/var/db/receipts目录下:

cd /private/var/db/receipts
ls -l

列出该目录,可以看到类似如下内容:

-rw-r–r– 1 root wheel xxx com.xxx.bom
-rw-r–r– 1 root wheel xxx com.xxx.plist

找到.bom文件后,我们就可以使用以下命令找到安装的文件列表:

lsbom -pf com.xxx.bom

执行上述命令后,输出了类似以下内容:

/xxx.app
./xxx.app/Contents
./xxx.app/Contents/CodeResources
./xxx.app/Contents/Frameworks

以上找到的这些文件,就是安装pkg的时候产生的文件,这些文件删除了就搞定。

方法二:

方式一虽然可行,但是很多人都抱怨没找到pkg安装历史列表目录(确实不同版本的系统,目录是不一样的),那有没有更自动一点的呢?

pkgutil命令这个时候就派上用场了。查看一下帮助:

man pkgutil # 或者直接pkgutil

看看有啥功能我们能用的:

Receipt Database Commands:
–pkgs, –packages List all currently installed package IDs on –volume
–pkgs-plist List all package IDs on –volume in plist format

–files PKGID List files installed by the specified package

我们先找一下我们要删除的pkg包名(以上述xxx为例):

pkgutil –pkgs | grep -i xxx

看一下输出了啥:

com.xxx

现在就可以找出xxx pkg到底装了哪些文件:

pkgutil –file com.xxx

终端输出的结果:

xxx.app
xxx.app/Contents
xxx.app/Contents/CodeResources
xxx.app/Contents/Frameworks

把这些文件删了应该就算卸载完毕。

但是上述方法都是有一定技术基础的,所以风险并存。

方式三:

使用第三方成熟的卸载工具,如uninstallpkg、cleanmymac等,新人推荐。

 

我要评论!

想一个你喜欢的昵称。
给一个你的常用邮箱。
想和萌萌哒的TA们说点啥。
  • 自从美洲狮开始,Apple引进了一个叫Gatekeeper的技术,用来保护系统免收外来Apps对系统安全的破坏,这也是Apple所作出的技术上对付曾经爆发的被闪回感染的事件,详见苹果的官方文档。 这个设置在System Preferences中的Security中给普通用户一个直观而简单的设置选项:...
  • 一、准备工作: 准备一个 8GB 或以上容量的 U 盘,确保里面的数据已经妥善备份好(该过程会抹掉 U 盘全部数据),下载苹果官方 OS X Yosemite 正式版的安装程序。 如果你是从 Mac AppStore 下载的,下载完成后安装程序可能自动开始,这时先退出安装,如从网盘下载的,请将解压后...
  • macOS下可能不像WIN下那么简单地就能修改,毕竟有权限的管控,那么需要用到时怎么操作? 1、打开终端命令窗口,找不到就COMMAND+空格键; 2、输入命令:sudo nano /etc/hosts; 3、输入超级用户口令以获得权限; 4、请尽情地修改吧; 5、按以下组合键保存并退出编辑状态:C...
  • 升级了macOS Sierra (10.12)版本后在“安全性与隐私”中不再有“任何来源”选项,如下图: 这可麻烦了,有些第三方的应用用不了了,若我们想要装却要允许任何来源的朋友就不知该怎么办了。 其实只要用我们万能的终端,这个问题还是能迎刃而解。 接下来,我们就打开终端,然后输入以下命令(要输入密...
  • 如何让一个Python脚本输出的文字信息是彩色的?其实这个其实跟python无关的,跟具体所用console的类型有关系,不同的类型对应不同的控制码,如果是ansi终端,可以用ansi的控制码。 Mac或Linux终端中的颜色是用转义序列控制的,转义序列以ESC开头,可以用\033完成相同的工作(E...
微信扫一扫即可带走我!