Mit pip installiertes Paket wurde nicht gefunden

Mit pip installiertes Paket wurde nicht gefunden

Ich versuche die Installation speedtest-climit Pip und erhalte die Fehlermeldung, dass speedtest-clidie Installation nicht erfolgt.


ubuntu@vostro:~$ pip install --user speedtest-cli
Collecting speedtest-cli
  Using cached https://files.pythonhosted.org/packages/61/8b/58d1de9a7fff3e91c5ab956ab4ba72b49f42d9f73d5f3e248c740dfcc816/speedtest_cli-2.1.1-py2.py3-none-any.whl
Installing collected packages: speedtest-cli
Successfully installed speedtest-cli-2.1.1
ubuntu@vostro:~$ speedtest-cli
-bash: /usr/bin/speedtest-cli: No such file or directory

Aber es speedtest-cliist korrekt installiert /home/ubuntu/.local/lib/python2.7/site-packagesund ich kann es ausführen, indem ich es python speedtest.pyin diesem Ordner ausführe.

Alle diese Ordner gehören dem Benutzer ubuntu, aber ich glaube, dass etwas nicht stimmt: die py- und pyc-Dateien sind nicht ausführbar. (Das waren sie standardmäßig nicht, ich habe nichts geändert.)

ubuntu@vostro:~/.local/lib/python2.7/site-packages$ ll
total 132K
drwxrwxr-x 2 ubuntu ubuntu 4,0K jun 02 2019 23:55 speedtest_cli-2.1.1.dist-info
-rw-rw-r-- 1 ubuntu ubuntu 1,2K jun 02 2019 23:55 speedtest_cli.py
-rw-rw-r-- 1 ubuntu ubuntu  62K jun 02 2019 23:55 speedtest.py
-rw-rw-r-- 1 ubuntu ubuntu  590 jun 02 2019 23:55 speedtest_cli.pyc
-rw-rw-r-- 1 ubuntu ubuntu  56K jun 02 2019 23:55 speedtest.pyc

Und das ist die Ausgabe vonpython -m site

ubuntu@vostro:~/.local/lib/python2.7/site-packages$ python -m site
sys.path = [
    '/home/ubuntu/.local/lib/python2.7/site-packages',
    '/usr/lib/python2.7',
    '/usr/lib/python2.7/plat-x86_64-linux-gnu',
    '/usr/lib/python2.7/lib-tk',
    '/usr/lib/python2.7/lib-old',
    '/usr/lib/python2.7/lib-dynload',
    '/usr/local/lib/python2.7/dist-packages',
    '/usr/lib/python2.7/dist-packages',
]
USER_BASE: '/home/ubuntu/.local' (exists)
USER_SITE: '/home/ubuntu/.local/lib/python2.7/site-packages' (exists)
ENABLE_USER_SITE: True

Ich denke, das Problem hängt mit den Umgebungseigenschaften zusammen, aber wenn ich mir die Ausgabe ansehe, bin ich mir nicht mehr so ​​sicher.

Antwort1

Sie sind innerhalb derselben Terminalsitzung von einer systemweiten Installation zu einer lokalisierten Benutzerinstallation der Anwendung gewechselt, ohne dass die Umgebung aktualisiert wurde.

Ihr Terminal merkt sich den systemweiten Installationspfad /usr/bin/...und versucht, diesen auszuführen.

Sie müssen die Terminalsitzung schließen und die Verbindung erneut herstellen, um eine neue Umgebung und neue $PATHInhalte zu erhalten.

(Wenn es einebesserer Wegum dies direkt von der Befehlszeile aus zu tun, würde ich es gerne wissen.)

verwandte Informationen