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等,新人推荐。
pkgutil –pkgs 列出系统安装的 pkg 包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 Neo-iMac:bin neo$ pkgutil --pkgs com.apple.pkg.CLTools_SDK_macOS12 com.apple.pkg.CLTools_Executables com.apple.files.data-template com.apple.pkg.CLTools_SDK_macOS110 com.apple.pkg.FCPContent com.apple.pkg.MRTConfigData_10_15.16U4173 com.apple.pkg.MXFPlugIns com.apple.pkg.MobileDeviceDevelopment com.apple.pkg.AppExceptions_12_0.16U2225 com.apple.pkg.ProVideoFormats com.apple.pkg.XProtectPlistConfigData_10_15.16U4170 com.apple.pkg.CLTools_macOS_SDK com.apple.pkg.XcodeSystemResources com.microsoft.edgemac com.microsoft.rdc.macos com.microsoft.package.Fonts com.apple.pkg.MobileAssets com.teamviewer.teamviewerAgent com.apple.pkg.Pages11 com.apple.pkg.iMovie_AppStore com.microsoft.package.Microsoft_Excel.app com.apple.pkg.InstallAssistantMAS TemplatesForOfficeFree com.tencent.qq com.tencent.xinWeChat com.microsoft.package.Microsoft_Word.app com.apple.pkg.GarageBand_AppStore com.microsoft.package.Frameworks com.nickmaskill.macofficetemplates com.microsoft.OneDrive-mac com.microsoft.package.Microsoft_OneNote.app com.apple.pkg.Pages7 com.microsoft.package.Microsoft_Outlook.app com.microsoft.package.Proofing_Tools com.apple.pkg.Keynote11 com.apple.pkg.Xcode com.teamviewer.teamviewer com.teamviewer.teamviewerPriviledgedHelper com.microsoft.package.Microsoft_AutoUpdate.app com.teamviewer.remoteaudiodriver com.apple.pkg.Keynote8 com.teamviewer.teamviewerAuthPlugin com.teamviewer.teamviewerRestarter com.microsoft.pkg.licensing com.apple.pkg.Numbers11 com.netease.163music com.tencent.WeWorkMac com.apple.pkg.Numbers5 com.wacom.TabletInstaller com.microsoft.package.Microsoft_PowerPoint.app com.apple.pkg.iMovie_AppStore com.apple.pkg.Keynote7 com.apple.pkg.GarageBand_AppStore com.apple.pkg.Pages6 com.apple.pkg.Numbers4
查看包内的软件
1 2 3 4 5 6 Neo-iMac:bin neo$ pkgutil --files com.microsoft.pkg.licensing Library Library/LaunchDaemons Library/LaunchDaemons/com.microsoft.office.licensingV2.helper.plist Library/PrivilegedHelperTools Library/PrivilegedHelperTools/com.microsoft.office.licensingV2.helper
删除包
1 Neo-iMac:bin neo$ sudo pkgutil --forget com.tencent.Foxmail