Wenn Sie mit sudo pip ausführen, wird der Befehl "pip: command not found" zwar installiert

25

sudo easy_install pip

Searching for pip
Best match: pip 1.4.1
Processing pip-1.4.1-py2.7.egg
pip 1.4.1 is already the active version in easy-install.pth
Installing pip script to /home/nyzlfc/.local/bin
Installing pip-2.7 script to /home/nyzlfc/.local/bin
Using /home/nyzlfc/.local/lib/python2.7/site-packages/pip-1.4.1-py2.7.egg
Processing dependencies for pip
Finished processing dependencies for pip

Und dann, wenn ich renne

sudo pip install -U pyyaml nltk

Ich bekomme:

sudo: pip: command not found
Rohan Naik
quelle

Antworten:

34

Wenn Sie pip aus dem Ubuntu-Repository installieren, funktioniert pip mit sudo (ich habe pip von 12.04 bis 14.04 auf diese Weise verwendet).

sudo apt-get installiere python-pip

NGRhodes
quelle
5
Sie müssen nicht immer sudo verwenden, um Python-Module zu installieren. Sie können sie mit pip install - user ipdb (zum Beispiel) auf Ihren Benutzer übertragen. Von dort aus werden sie in ~ / .local / lib / python-ver / installiert und die Bins werden in ~ / .local / bin / abgelegt. Füge also ~ / .local / bin zu deinem $ PATH hinzu und du bist g2g, wenn du pip nicht sudo verwendest.
LazyPower
Guter Punkt, ich habe daran gearbeitet, dass die Frage die Verwendung von sudo war, dass die Installation mit sudo erwünscht war. Ich mache im Allgemeinen, wie mein Code von verschiedenen Benutzern auf dem gleichen System verwendet wird
NGRhodes
8

Dein Pip ist in installiert /home/nyzlfc/.local/bin, was nicht im sudoPfad liegt und das hat einen guten Grund. Ergänzen ~/.local/binSie einfach Ihren Pfad und entfernen Sie sich, sudoda dies nicht erforderlich ist.

Braiam
quelle
4

Ich hatte das gleiche Problem, und der Grund, warum ich dieses Problem hatte (unter Debian), ist, dass ich python3.2 und python3-pip installiert habe und als solches hatte ich wirklich keine ausführbare pip-Datei, ich hatte auch keine ausführbare pip3-Datei . Ich habe Pip-3.2 ausführbar!

Als solches würde ich auch empfehlen zu tun

sudo pip

und dann die Tabulatortaste drücken, um die Autovervollständigungsoptionen anzuzeigen ...

patapouf_ai
quelle
+1 sudo pip und dann die Tabulatortaste drücken, um die Autovervollständigungsoptionen anzuzeigen ... hat den Job für mich erledigt.
Almir Campos
3

Überprüfen Sie zuerst Ihre $PATHVariable mit dem echoBefehl:

$ echo $PATH

Wenn dies /usr/local/binnicht der Fall ist, bearbeiten Sie die versteckte Datei .profilein Ihrem Ausgangsverzeichnis. Wenn diese Datei fehlt, bearbeiten Sie sie .bash_profilestattdessen.

Fügen Sie als allerletzte PATHAnweisung die folgende Zeile hinzu:

PATH=$PATH:/usr/local/bin
ManojB
quelle
0

Wenn Sie kein neues Paket installieren möchten (um sicherzustellen, dass es nicht mit Ihrer aktuellen Python-Umgebung in Konflikt gerät), empfehle ich, nur zur Installation auf root zu wechseln . Ich fand es einfacher. Vergessen Sie jedoch nicht, gleich nach Abschluss der Installation zurückzuschalten.

Mojtaba Komeili
quelle
0

Ich vergesse es immer selbst!

  • Ich habe pip in installiert ~/.local/bin
  • wenn ich a mache pip install package, bekomme ich PermissionDeniedirgendwo eine /usr/local/share/mit der freundlichen lösung reinConsider using the '--user' option or check the permissions.

Tun pip install --user packageSie daher Folgendes: (es sei denn, Sie benötigen dieses Paket global / auch für andere Benutzer)

tokosh
quelle
0

Wenn Sie in Python3 installiert haben, können Sie dies tun python3 -m pip install package_name

Tsheri Sherpa
quelle