如何在Mac OS X中完全卸载(删除属于某个包的文件)?这可以使用终端中的命令来完成吗?
我已经安装了一个。在Mac上安装pkg软件包,我想知道如何在不使用第三方应用程序(如UninstallPKG)的情况下卸载整个软件包?
我想知道卸载. dmg文件是否也需要第三方应用程序,或者是否可以在终端中输入命令卸载它们?
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不是安装程序文件。它们是磁盘映像文件。它可能会有。应用程序、pkg、MPKG、其他文件等。安装的是DMG内部的安装程序。DMG必须装载才能读取内容,完成后卸载。
http://osxdaily.com/2011/12/17/mount-a-dmg-from-the-command-line-in-mac-os-x/
此链接提供有关如何安装DMG的信息
我正在修改@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 page和这篇文章。
在终端中使用此命令检查包列表并卸载您的文件。
$ 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
从这里复制(原始的回程机器快照)
问题内容: 当我尝试从虚拟环境中卸载时,我看到它也尝试卸载更多软件包: 我想卸载 只 和没有别的降级。 我知道这些软件包都 依赖 于熊猫甚至 特定版本 的panda,但这完全可能吗? 部分动机 我的理解是,使用来从GitHub安装软件包并不容易。至少它不像使用单线纸那样容易。 由于我想在中使用该版本,因此我的计划是卸载该版本,并使用从正式仓库GitHub上的master安装。 我怎样才能做到这一点
我希望卸载Python2.7和所有连接到它的包。我最初从官方网站安装Python,并使用pip install命令安装所有软件包。从控制面板卸载Python是否也会自动卸载所有软件包? 我想卸载Python的原因是,我想使用Anaconda,以便能够更轻松地管理包,并且能够安装Python2和Python3,以便在它们之间来回切换。
本文向大家介绍VB.NET中调用MSI卸载软件的2个方法,包括了VB.NET中调用MSI卸载软件的2个方法的使用技巧和注意事项,需要的朋友参考一下 最近在折腾组里面的那个破Lab,要自己写程序每天安装最新版本的build。而今天手头上没有任何任务,所以把用到的一些东西记下来以供今后参考。这篇日志来记录如何在.NET中卸载别的软件。 一、直接使用MSI安装包 如果你知道MSI安装程序的路径,那么
问题内容: 您可以简单地从python安装中删除目录,还是必须删除任何残留文件? 问题答案: 它取决于您传递给的选项以及系统/软件包中distutils配置文件的内容。我不相信会以这些方式在指定目录之外修改任何文件。 值得注意的是,distutils目前没有卸载命令。 还值得注意的是,删除程序包/鸡蛋可能会导致依赖关系问题,例如尝试减轻此类问题的实用程序。
问题内容: 在软件包目录中使用安装节点软件包时,完成开发后如何卸载软件包? 将软件包安装为系统全局软件包位置(’/ usr / local / lib`)中的符号链接。这样,您就可以在仍在开发程序包的情况下对其进行测试,而不必一遍又一遍地安装它。 我需要运行哪个npm命令来再次删除链接? 问题答案: 可以使用可用于删除已安装软件包的相同 卸载 或 rm 命令来 卸载 软件包。唯一要记住的是,该链接
问题内容: 当您用来安装软件包时,所有必需的软件包也会随之安装(依赖关系)。卸载该软件包还会删除从属软件包吗? 问题答案: 不,它不会卸载依赖包。它仅删除指定的软件包: figleaf == 0.6.1 鼻子== 1.1.2 pinocchio == 0.3 specloud == 0.4.5 figleaf == 0.6.1 鼻子== 1.1.2 pinocchio == 0.3 如您所见,这些