[英]Osx 'which' command working weird
為了處理不同版本的Python問題,我使用macport安裝了python27,稍后安裝py27-pip並執行
sudo port install python27
sudo port install py27-pip
sudo port select --set pip pip27
sudo port select --set python python27
后來我嘗試使用pip安裝一些軟件包。 pip仍指Mac python,而不是port python。 我認為“哪個”命令應該指向正確的點子版本。 但是結果是
$which pip
/opt/local/bin/pip
$pip --version
pip 7.1.2 from /Library/Python/2.7/site-packages (python 2.7)
$/opt/local/bin/pip --version
pip 7.1.2 from /opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages (python 2.7)
誰能幫忙指出為什么'哪個在這里不起作用?
which
是工作得很好。 但是, which
並不能反映你的shell查找緩存。
每當您第一次在bash中運行沒有路徑的命令時,bash都會緩存which
調用的結果。 然后,該命令的后續使用不必在PATH
再次找到該命令。
在運行sudo port select --set pip pip27
之前,您可能已經運行了pip
,並且bash仍然緩存了舊路徑。
運行hash -d pip
從緩存中僅清除該條目,或者運行hash -r
完全清除緩存。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.