【发布时间】:2017-04-04 05:37:40
【问题描述】:
我ssh以用户身份进入 Linux 服务器。不知何故,服务器安装了 Python 2.7.5,但没有响应 which pip。
所以我尝试根据pip docs使用get-pip.py安装pip。默认安装选项似乎有问题:
$ python get-pip.py
OSError: [Errno 13] Permission denied: '/usr/lib/python2.7/site-packages/pip'
所以我尝试了:
$ python get-pip.py --user
Collecting pip
Using cached pip-9.0.1-py2.py3-none-any.whl
Collecting setuptools
Using cached setuptools-28.8.0-py2.py3-none-any.whl
Collecting wheel
Using cached wheel-0.29.0-py2.py3-none-any.whl
Installing collected packages: pip, setuptools, wheel
Successfully installed pip-9.0.1 setuptools-28.8.0 wheel-0.29.0
但是which pip 仍然产生no pip in ...(my PATH)。安装在哪里,谁能猜一猜?
【问题讨论】:
-
运行
find $HOME -name 'pip' -print。这将告诉您它的安装位置,如果它在您的主目录中正确安装。 -
很有趣,我在
~/.local/lib/python2.7/site-packages/pip中找到了它并将其添加到我的 PATH 中。令人惊讶的是,which pip仍然没有找到它 (no pip in (...:[full path to ~/.local]))。 -
添加到 PATH 时不要使用
~。使用$HOME。~扩展仅限于 shell,并且仅当它是单词中的第一个字符时。详情请见stackoverflow.com/questions/11587343/…。 -
我没有使用
~。它是“~/.local 的完整路径”。 -
通常,这也可以使用
python -m pip <whatever>解决,因为pip是一个可执行模块/包。这还可以确保您拥有正确的 pip 版本来搭配正确的 Python 版本,这在您安装了多个 Python 版本(2.7、3.4、3.5...)的情况下非常有用。
标签: python linux python-2.7 pip