在Mac OS X中卸载软件包

问题描述 投票:21回答:4

如何在Mac OS X中完全卸载(删除属于某个软件包的文件)?可以使用终端中的命令完成吗?

我在Mac上安装了一个.pkg软件包,我想知道如何在不使用第三方应用程序(如UninstallPKG)的情况下卸载整个软件包?

我想知道卸载.dmg文件是否也需要第三方应用程序,还是可以卸载它们在终端中输入命令?

macos uninstall dmg pkg-file
4个回答
12
投票

在终端中使用此命令检查包列表并卸载文件。

$ pkgutil --pkgs # list all installed packages

卸载文件后,您可以使用以下命令删除收据:

$ sudo pkgutil --forget the-package-name.pkg

在目视检查文件列表后,您可以执行以下操作:

$ pkgutil --pkg-info the-package-name.pkg # check the location
$ cd / # assuming the package is rooted at /...
$ pkgutil --only-files --files the-package-name.pkg | tr '\n' '\0' | xargs -n 1 -0 sudo rm -i

小心这最后一步。 pkgutil --files输出的目录列表可以包含重要的共享目录,例如usr,您不想删除它们。

$ pkgutil --only-dirs --files the-package-name.pkg | tr '\n' '\0' | xargs -n 1 -0 sudo rm -ir

复制自here


9
投票

我正在修改@karthikeyan的答案,这对我不起作用。

在命令行中,使用以下命令查找所需的包名称:

$ pkgutil --pkgs | grep -i {keyword} | less

其中{keyword}是您希望在包名中看到的字符串。

要查找包位置(所有文件列表将相对的根目录),请使用

$ pkgutil --pkg-info package-name.pkg

使用此列出包的已安装文件:

$ pkgutil --files package-name.pkg

在目视检查文件列表后,您可以执行以下操作来删除它们:

$ cd / # assuming the package location is /
$ pkgutil --only-files --files package-name.pkg | tr '\n' '\0' | xargs -n 1 -0 -p sudo rm

小心下一步(最后)步骤,删除目录。 pkgutil --files输出的目录列表可以包含重要的共享目录,例如usr,您不想删除它们。 -p导致xargs提示确认,但不要触发快乐。 (你也应该对rmdir安全,因为它只会删除空目录。但有些人需要调整命令行,所以最好清楚!)

$ pkgutil --only-dirs --files package-name.pkg | tr '\n' '\0' | xargs -n 1 -0 -p sudo rmdir

卸载文件后,可以删除该软件包的系统记录:

$ sudo pkgutil --forget package-name.pkg

资料来源:pkgutil man pagethis post


6
投票

OS X中没有PKG卸载的概念.PKG / MPKG可以具有与之关联的某些预安装和后安装脚本。 PKG脚本中的操作总是由PKG创建者完成。作为外行,我们无法继续卸载PKG。

但与此同时,有一些命令行可以对PKG文件进行完整的逆向工程。它可以提取脚本和其他相关信息。下面给出的链接将为您提供一些信息

http://s.sudre.free.fr/Stuff/Ivanhoe/FLAT.html http://www.mactech.com/articles/mactech/Vol.26/26.02/TheFlatPackage/index.html

OS X上几乎没有卸载/清除应用程序。他们中的大多数都使用应用程序名称/ pkg名称或包标识符在已知目录(例如/ Library / Preferences,/ Library / Application Support等)中进行搜索。这是完全删除的一种方法。

DMG不是安装程序文件。它们是磁盘映像文件。它可以包含.apps,pkg,mpkgs,其他文件等。安装的是DMG内部的安装程序。必须安装DMG才能读取内容并在完成后卸载。

http://osxdaily.com/2011/12/17/mount-a-dmg-from-the-command-line-in-mac-os-x/

此链接提供有关如何安装DMG的信息

© www.soinside.com 2019 - 2024. All rights reserved.