如何在Mac OS X 10.6.4上卸载Python 2.7?

时间:2010-09-29 07:03:39

标签: python macos uninstall python-2.7

我想从Mac OS X 10.6.4中完全删除Python 2.7。我设法通过还原PATH来移除.bash_profile变量中的条目。但我还想删除Python 2.7安装包安装的所有目录,文件,符号链接和条目。我从http://www.python.org/获得了安装包。我需要删除哪些目录/文件/配置文件条目?某个地方有名单吗?

15 个答案:

答案 0 :(得分:555)

请勿尝试删除/System/Library/usr/bin中任何Apple提供的系统Python,因为这可能会破坏整个操作系统。


注意: 下面列出的步骤会影响Apple提供的系统Python 2.7;他们只删除第三方Python框架,如python.org installers安装的那些。


完整列表为documented here。基本上,您需要做的就是:

  1. 删除第三方Python 2.7框架

    sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
    
  2. 删除Python 2.7应用程序目录

    sudo rm -rf "/Applications/Python 2.7"
    
  3. 删除/usr/local/bin中指向此Python版本的符号链接。使用

    查看它们
    ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' 
    

    然后运行以下命令删除所有链接:

    cd /usr/local/bin/
    ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm
    
  4. 如有必要,请编辑您的shell配置文件,以删除/Library/Frameworks/Python.framework/Versions/2.7环境文件中的PATH添加内容。根据您使用的shell,可能已修改以下任何文件: ~/.bash_login~/.bash_profile~/.cshrc~/.profile~/.tcshrc和/或~/.zprofile

答案 1 :(得分:73)

这个有效:

cd /usr/local/bin/
ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7' | awk '{print $9}' | tr -d @ | xargs rm

描述: 它列出了所有链接,删除了@个字符,然后将其删除。

答案 2 :(得分:22)

如果您使用PKG安装程序安装它,则可以执行以下操作:

pkgutil --pkgs

或更好:

pkgutil --pkgs | grep org.python.Python

将输出如下内容:

org.python.Python.PythonApplications-2.7
org.python.Python.PythonDocumentation-2.7
org.python.Python.PythonFramework-2.7
org.python.Python.PythonProfileChanges-2.7
org.python.Python.PythonUnixTools-2.7

您现在可以选择要取消链接(删除)的软件包。

这是unlink文档:

 --unlink package-id
             Unlinks (removes) each file referenced by package-id. WARNING: This command makes no attempt to perform reference counting or dependency analy-
             sis. It can easily remove files required by your system. It may include unexpected files due to package tainting. Use the --files command first
             to double check.

在我的示例中,您将键入

pkgutil --unlink org.python.Python.PythonApplications-2.7
pkgutil --unlink org.python.Python.PythonDocumentation-2.7
pkgutil --unlink org.python.Python.PythonFramework-2.7
pkgutil --unlink org.python.Python.PythonProfileChanges-2.7
pkgutil --unlink org.python.Python.PythonUnixTools-2.7

或单行:

pkgutil --pkgs | grep org.python.Python | xargs -L1 pkgutil -f --unlink

重要提示: - 从Lion开始不再提供--unlink(截至2014年第一季度,其中包括Lion,Mountain Lion和Mavericks)。如果有任何人按照这个说明尝试将它与狮子一起使用,那么应该尝试使用此帖子所说的内容进行调整:https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X

答案 3 :(得分:22)

创建指向最新版本的符号链接

 ln -s -f /usr/local/bin/python3.8 /usr/local/bin/python

关闭并打开一个新终端

然后尝试

 python --version

答案 4 :(得分:17)

尝试使用

卸载Python
brew uninstall python

删除本机安装的Python,而是删除与brew一起安装的版本。

答案 5 :(得分:8)

关于删除符号链接,我发现这很有用。

find /usr/local/bin -lname '../../../Library/Frameworks/Python.framework/Versions/2.7/*' -delete

答案 6 :(得分:6)

我在从 python 2.7.16 升级到 python 3.9 时遇到了同样的问题 只需使用 brew install python 安装新的 python 版本或下载并安装你的操作系统

  1. sudo rm -rf /Library/Frameworks/Python.framework/Versions/2.7
    
  2. sudo rm -rf "/Applications/Python 2.7"
    
  3. ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/2.7'
    
  4. 然后检查 -> python --version

  5. 在您的 .bash_profile 中创建一个指向新 Python 版本的别名;像这样:

    alias python="/usr/local/bin/python3" 
    

    然后保存并运行源代码 ~/.bash_profile

  6. 检查 -> python --version

一切就绪

答案 7 :(得分:5)

无需卸载旧的python版本。

只需安装新版本说python-3.3.2-macosx10.6.dmg即可 并将python的软链接更改为新安装的python3.3

使用以下命令检查默认python和python3.3的路径

“哪个python”和“哪个python3.3”

然后删除python的现有软链接并将其指向python3.3

答案 8 :(得分:4)

注意如果您使用Homebrew安装了Python,那么您可以按照以下步骤操作,否则请寻找其他解决方案!

要卸载使用Homebrew安装的Python 2.7.10,您只需发出以下命令:

brew uninstall python

同样,如果要卸载Python 3(使用Homebrew安装):

brew uninstall --force python3

答案 9 :(得分:4)

OnurGüzel在他的博文"Uninstall Python Package from OS X中提供了解决方案。

您应该在终端中输入以下命令:

  1. sudo rm -rf /Library/Frameworks/Python.framework
  2. cd /usr/local/bin
  3. ls -l . | grep '../Library/Frameworks/Python.framework' | awk '{print $9}' | xargs sudo rm
  4. sudo rm -rf "/Applications/Python x.y"

    其中命令x.y是安装的Python版本。根据你的问题,它应该是2.7。

  5. 在Onur的话中:

      

    警告:此命令将删除随软件包一起安装的所有Python版本。系统提供的Python不会受到影响。

    如果你从python.org安装了多个Python版本,那么再次运行第四个命令,为每个要卸载的Python版本更改“x.y”。

答案 10 :(得分:2)

如果您正在考虑手动删除Apple的默认Python 2.7,我建议您暂停使用并注意:看起来Apple很快就会为您做到这一点:

OSX 10.15 Catalina中弃用的Python 2.7

Python 2.7-和Ruby&Perl-在Catalina中已弃用:(跳到“ 脚本语言运行时 ”部分>“ 弃用 ”)

https://developer.apple.com/documentation/macos_release_notes/macos_catalina_10_15_release_notes

Apple将在OSX 10.16中删除Python 2.7

实际上,根据 Mac Observer ,如果您什么都不做,则OSX版本10.16会将Python 2.7从您的系统中消失:

https://www.macobserver.com/analysis/macos-catalina-deprecates-unix-scripting-languages/

鉴于这个启示,我建议最好的做法是什么也不做,等待苹果为您清除。由于Apple即将为您删除它,因此似乎不值得尝试修改您的Python环境。

注意:我看到这个问题专门与 OSX v 10.6.4 有关,但是对于所有有兴趣删除OSX的人来说,这个问题似乎已经成为一个关键点。无论运行什么版本,都可以从其系统中获取Python 2.7。

答案 11 :(得分:1)

这在 Mac OS 上对我有用

  1. https://www.python.org/downloads/mac-osx/

    下载最新的 Python 3.x
  2. 通过点击安装程序时显示的安装步骤来安装 Python 3.x

  3. ln -s -f /usr/local/bin/python3.9 /usr/local/bin/python

  4. ln -s -f /usr/local/bin/pip3 /usr/local/bin/pip

  5. 打开一个新的终端窗口并验证 python --version。应该说 3.x

对于第 3 步,通过检查 which python

的输出来确认现有 python 可执行文件的路径

答案 12 :(得分:0)

无需卸载它,也不必使用符号链接,只需使用alias。升级到python 3.7.1时遇到了同样的问题。
只需使用brew install python安装新的python版本,然后在.bash_profile中创建一个指向新python版本的别名即可;像这样:alias python="/usr/local/bin/python3",然后保存并运行source ~/.bash_profile
完成。

答案 13 :(得分:0)

在这里你会看到所有预装的python版本,包括2.3、2.4甚至2.7。

/System/Library/Frameworks/Python.framework/Versions

但是,即使使用 sudo 我不这么认为,您也可以删除它们。你会得到一个错误 - Operation not permitted

答案 14 :(得分:0)

尝试删除某些 python 库时的注意事项,Mac OS 需要 python! 请勿删除以下文件夹中的任何 Python 版本:

/usr/bin
system/Library

这些 Python 2.7 版本由 Apple 安装并由 Mac OS 和其他软件使用。从这些目录中删除 Python 会破坏您的系统。