'usr/bin/python' 和 'python' 運行不同的版本

'usr/bin/python' 和 'python' 運行不同的版本

在我的 OS X 上,在終端機中輸入 /usr/bin/python 會運行 Python 2.6.1,但輸入 python 會運行 Python 2.7.2。我希望前者也能運行 2.7.2 - 我該怎麼做?

答案1

/usr/bin/python 中的版本是作為 OS X 的一部分安裝的版本。您可能已經透過 MacPorts 等安裝了較新的版本。

更改 /usr/bin/python 指向的位置可能很危險,以防其他應用程式需要它。您可以更改 python 腳本,以便它們透過更改第一行來找到使用者的 python 版本:

#!/usr/bin/python

到:

#!/bin/env python

如果你確實想替換/usr/bin/python,你可以這樣做:

sudo mv /usr/bin/python /usr/bin/python.dist
sudo ln -s `which python` /usr/bin/python

然而,就像我說的,這可能很危險。如果您稍後需要恢復此更改,您可以運行:

sudo rm /usr/bin/python
sudo mv /usr/bin/python.dist /usr/bin/python

但請小心運行這些。如果你不小心刪除了 OS X 上系統安裝的 python 版本,那麼恢復它會遇到一些麻煩。

答案2

看來這/usr/bin/python是蘋果提供的文件。正如其他人所提到的,不要碰它。

該文件本身似乎指向(參考文獻1):

/Library/Frameworks/Python.framework/Versions

在此資料夾中,您應該可以找到最新安裝的 2.x 或 3.x 版本,其中符號連結資料夾名為 Current/,其中 Current/ 將指向最新安裝的版本。

請注意,您安裝過的所有 Python 版本均位於(參考文獻 2):

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

就我而言,我必須從「參考 1」中刪除 2.5 資料夾,並從「參考 2」上傳 2.7。然後我刪除了“當前”連結並創建了一個指向 2.7/ 資料夾的新連結(ln -s 2.7/ Current)。 [我不確定,其他資料夾可能也需要同樣的]

現在,當打字時蟒蛇——版本你應該會看到 python 版本指向你創建的最新的 Current/ 鏈接,在我的例子中它是版本 2.7。

我希望這有幫助,它在這裡有效。

相關內容