web-dev-qa-db-fra.com

pip cassé après la mise à niveau

J'ai installé pip -U easyinstall, puis pip install -U pip pour mettre à niveau mon pip. Cependant, j'obtiens cette erreur maintenant en essayant d'utiliser pip:

root@d8fb98fc3a66:/# which pip
/usr/local/bin/pip
root@d8fb98fc3a66:/# pip
bash: /usr/bin/pip: No such file or directory

Ceci est sur un Ubuntu 12.04 dans une image de menu fixe. 

27
dl8

Une des raisons peut être des endroits mémorisés.

Vous pouvez effacer les emplacements mis en cache en émettant la commande suivante:

hash -r

SIDENOTE: Au lieu de which, en utilisant la commande type, vous pouvez voir l’emplacement haché:

$ 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)
72
falsetru

Si hash -r ne fonctionne pas, il est possible que la nouvelle pip soit installée dans /usr/local/bin/ au lieu de l'ancienne dans /usr/bin/. Et il se trouve que le nouvel emplacement ne figure pas dans la liste des chemins recherchés pour les exécutables.

Dans ce cas, soit corrige la liste des chemins ou copie les exécutables:

cp -p /usr/local/bin/pip* /usr/bin/

Vous pouvez également créer un lien rigide entre les exécutables au lieu de les copier (cela peut garantir que les mises à niveau futures sont effectuées correctement).

1
ADTC