我做了pip install -U easyinstall,然後用pip install -U pip升級我的pip。但是,當我嘗試使用pip時,現在出現此錯誤:pip破壞升級後
[email protected]:/# which pip
/usr/local/bin/pip
[email protected]:/# pip
bash: /usr/bin/pip: No such file or directory
這是在docker鏡像中的Ubuntu 12.04上。
我做了pip install -U easyinstall,然後用pip install -U pip升級我的pip。但是,當我嘗試使用pip時,現在出現此錯誤:pip破壞升級後
[email protected]:/# which pip
/usr/local/bin/pip
[email protected]:/# pip
bash: /usr/bin/pip: No such file or directory
這是在docker鏡像中的Ubuntu 12.04上。
其中一個原因是可以記住的位置。
您可以通過發出以下命令清除緩存的位置:
hash -r
旁註:相反的which
,使用type
命令,你可以看到哈希的位置:
$ type pip
pip is /usr/local/bin/pip
$ pip -V
pip 1.5.6 from /usr/local/lib/python2.7/dist-packages (python 2.7)
$ type pip
pip is hashed (/usr/local/bin/pip)
@downvoter:我可以知道爲什麼嗎? – falsetru 2016-05-31 14:55:40
如果做hash -r
沒有按沒有工作,有可能在/usr/local/bin/
中安裝了新的pip
,而不是/usr/bin/
中的舊版本。而且恰巧新的位置不在搜索可執行文件的路徑列表中。
在這種情況下,要麼固定的路徑或列表複製可執行文件:
cp -p /usr/local/bin/pip* /usr/bin/
您還可以硬連接,而不是複製他們的可執行文件(這可以確保未來的升級都正確完成)。
您是否嘗試重新安裝點子? – AHuman 2014-10-10 15:24:46
是的,但這只是讓我有一個未更新版本的點...再次開始這個循環 – dl8 2014-10-10 15:27:42
你嘗試過'easy_install pip'嗎? – AHuman 2014-10-10 15:28:47