OS X上的异常$ PATH

时间:2013-10-30 22:28:04

标签: python macos bash path

我意识到这可能是一个简单的问题但是,我95%的道路被搞砸了。打开一个新终端并键入[echo $ PATH]的结果是:

/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/Users/bmoog/.rvm/bin

环顾四周似乎应该更像是:

/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin

有没有猜到我为什么要进入我的Python.framework?

2 个答案:

答案 0 :(得分:4)

python.org和许多其他来源的Python安装程序不会在/ usr / local / bin或/ usr / bin中安装任何东西。相反,他们将所有内容安装到框架内的bin目录中,然后为您提供将bin目录添加到路径的选项。 (通常,任何使用该Python安装的脚本,或者稍后安装到其中的软件包,都会在框架的bin目录中结束。)

因此,在某些时候,您运行了第三方Python 2.7安装程序,并选中了复选框/手动运行安装后脚本/等。这样做。

所有选项都会在您的~/.bash_profile前面添加以下4行:

# Setting PATH for Python 2.7
# The orginal version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

(可能会修复orginal的错误original,具体取决于您的版本。)

所以,如果你不害怕丢失任何后续更改,你可以只恢复cp ~/.bash_profile.pysave ~/.bash_profile ...或者,更安全的是,只需在您喜欢的文本编辑器中编辑文件并删除这些行。


当然,如果您这样做,您将无法再运行第三方Python或其2to3或为其安装的ipython等,而无需指定可怕的绝对路径......


与此同时,您可能首先不需要第三方Python 2.7。 Apple已经为至少三个主要操作系统版本提供了Python 2.7(小牛队为2.7.5,Lion和Mountain Lion为2.7.2),为/usr/bin/python。如果你不想在你的PATH上使用这个2.7,你可能根本不需要它,所以我只是卸载它。

答案 1 :(得分:2)

检查您的~/.bash_profile,然后检查其中包含的所有文件,以查看额外路径的来源。在某处会有一行如下:

export PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}

但你真的在乎吗?