Пакет, установленный с помощью pip, не найден

Пакет, установленный с помощью pip, не найден

Я пытаюсь установить speedtest-cliс помощью pip и получаю ошибки, сообщающие о том, что speedtest-cliпакет не установлен.


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

Но speedtest-cliон правильно установлен, /home/ubuntu/.local/lib/python2.7/site-packagesи я могу запустить его, выполнив команду python speedtest.pyв этой папке.

Все эти папки принадлежат пользователю ubuntu, но я думаю, что что-то не так: файлы py и pyc не являются исполняемыми. (По умолчанию они не были исполняемыми, я ничего не менял)

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

И это результатpython -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

Я думаю, что проблема связана со свойствами env, но, глядя на этот вывод, я уже не так в этом уверен.

решение1

Вы перешли от общесистемной установки к локальной пользовательской установке приложения в рамках того же сеанса терминала без обновления его среды.

Ваш терминал запоминает общесистемный путь установки /usr/bin/...и пытается запустить его.

Вам потребуется закрыть сеанс терминала и подключиться заново, чтобы получить новую среду и $PATHсодержимое.

(Если естьлучший путь(Чтобы сделать это непосредственно из командной строки, я бы с удовольствием узнал.)

Связанный контент