2010-09-29 114 views
202

我想從我的Mac OS X 10.6.4中完全刪除Python 2.7。我設法通過恢復我的.bash_profile從PATH變量中刪除條目。但我也想刪除Python 2.7安裝包安裝的所有目錄,文件,符號鏈接和條目。我從http://www.python.org/獲得了安裝包。我需要刪除哪些目錄/文件/配置文件條目?有沒有列表?如何在Mac OS X 10.6.4上卸載Python 2.7?

+1

對於許多開源項目,我強烈建議使用[MacPorts](http://www.macports.org/)來安裝它們。它允許您輕鬆更新和刪除它們。還有[Homebrew](https://github.com/mxcl/homebrew),但它不太成熟(IMO)。 – Zenon 2012-04-05 00:42:47

+0

是否還有其他的東西,比如/ Library/Python中的一堆文件,以及您可能已經安裝的pip包? – 2012-04-27 23:02:59

回答

393

注:這裏列出的步驟做影響蘋果提供的系統的Python 2.7;他們只能刪除像python.org安裝程序安裝的第三方Python框架。不要試圖刪除任何在/System/Library/usr/bin中的Apple提供的系統Python。

完整列表是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配置文件(S)以去除添加/Library/Frameworks/Python.framework/Versions/2.7PATH環境文件。取決於您使用的是哪個外殼,以下任何文件可能已被修改: ~/.bash_login,~/.bash_profile,~/.cshrc,~/.profile~/.tcshrc和/或~/.zprofile

+85

感謝Ned的領導,我確實刪除了它,並發現你必須重新安裝Mac OS X的困難方式。我將此留給這裏的任何其他參與者,並且認爲我也是這樣做的。不要刪除/ System/Library/Frameworks中的Python/...你的應用程序都不會工作,你將不得不重新安裝OS X. – brthornbury 2014-10-06 17:42:42

+24

Python 2.7是最近系統上的默認系統Python,而在10.6.4是2.6和2.7是用戶安裝的。不要從最新的OS X系統中卸載2.7。 – 2016-05-31 15:08:02

+19

上面的步驟並沒有從任何*版本的OS X中刪除系統Python。系統Pythons安裝在'/ System/Library/Frameworks'中(你永遠不應該修改),而不是'/ Library/Frameworks'。 – 2016-06-01 06:30:12

65

這一個工程:

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

說明: 它列出的所有鏈接,刪除@字符,然後將其刪除。

+1

我嘗試了這裏提供的每一個答案,這是最終做到的伎倆。 – jtsmith1287 2013-01-09 16:19:22

19

如果你使用PKG安裝程序安裝它,你可以這樣做:

​​

或更好:

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 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 

重要:--unlink不從Lion開始(截至2014年第一季度,包括Lion,Mountain Lion和Mavericks)。如果有人在閱讀本說明時嘗試將其與獅子一起使用,請嘗試改爲使用本帖的說明:https://wincent.com/wiki/Uninstalling_packages_(.pkg_files)_on_Mac_OS_X

+2

不幸的是,根據'pkgutil'的不同,將不會刪除Python安裝程序安裝的所有文件,因爲它們中的一些文件是在安裝postflight腳本期間創建的,因此未註冊。 – 2014-10-06 04:29:12

5

無需卸載舊的Python版本。

只要安裝新版本說的python-3.3.2-macosx10.6.dmg 和改變蟒蛇的軟鏈接到新安裝的python3.3

檢查默認Python和python3.3的路徑有以下命令

「的蟒蛇」和「這python3.3」

然後刪除現有的蟒蛇軟鏈接,其指向python3.3

+6

謝謝,但這不能回答我的問題。問題不在於我是否需要卸載舊的Python版本才能安裝新版本。 – 2013-09-28 17:58:48

+0

這似乎是最安全的方法,因爲對我來說,操作系統放在機器上的東西通常不會那麼好。我也遇到了來自python2 shell中python3語句的語法問題,「從http://python.org獲得了安裝包」。我的第一個想法是刪除python2並使用python3。但是,之前的帖子證實了這一行動的危險性。這對我來說是更好的解決方案,並遵循「使用鏈接重新路由行爲」的想法。另外,python3 shell已經安裝完畢,只需在提示符下鍵入「python3」而不是「python」即可。 – 2015-01-23 17:53:48

5

在問候刪除符號鏈接,我發現這被使用FUL。

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

我在Mac OSX Yosemite上卸載了Python 2.7.10,執行以下「brew uninstall python」。它成功地完成如下:

John-Mulhall-MacBook-Pro:~ js$ brew uninstall python 
Uninstalling /usr/local/Cellar/python/2.7.10... (4777 files, 78M) 
John-Mulhall-MacBook-Pro:~ js$ 

顯然你必須有第一次安裝BREW這個工作......

https://github.com/Homebrew/homebrew/blob/master/share/doc/homebrew/Installation.md#installation

**如果你想用沖泡卸載Python3:

brew uninstall --force python3 
+1

在OS X上成功工作El Capitan(10.11.4) – realPK 2016-06-09 05:13:55

+0

在macOS上無法工作Sierra – huuang 2017-02-11 10:45:16

+0

這不會卸載python,它會刪除通過brew安裝的其他python副本(如果存在)。 – 2017-07-20 15:11:18

9

brew uninstall python卸載將刪除本地安裝的python,而是使用brew安裝的verson。

-1

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。

在厄尼爾的話說:

警告:此命令將刪除該包裝安裝的所有Python版本。從系統提供的Python不會受到影響。

如果您已經從python.org安裝了超過1個Python版本,請再次運行第四個命令,爲每個要卸載的Python版本更改「x.y」。