Я только делал это сегодня, кажется, что ясная документация недостаточна для людей, которые хотят сохранить некоторый контроль над тем, что установлено и где.
Предположим, что вы запустили установку pip3, по умолчанию она помещается в ~ / .local, как вы знаете. В Unix принято разделять типы файлов, помещая «запускаемые» в ~ / .local / bin.
В терминале введите это, чтобы увидеть ваш путь сейчас:
$ echo $PATH
Убедитесь, что у вас есть установленный питон в ~ / .local
$ ls -la ~/.local/bin
Это подтверждает, что исполняемые файлы есть или есть для меня. Если эти права доступа к файлам показывают «x», они исполняемые.
Теперь добавьте этот каталог к пути в терминале
$ export PATH=~/.local/bin:$PATH
Проверьте свой путь еще раз, чтобы увидеть изменения. Пожалуйста, помните, что это временная настройка только для этой терминальной сессии. Это не относится к другим терминалам одновременно или в будущем. Это хорошее место для тестирования вещей.
После этого каждая исполняемая программа в ~ / .local / bin должна запускаться, если вы введете ее имя в командной строке. Например, нет необходимости запускать «~ / .local / bin / jupyter». Просто введите "Jupyter". Нет необходимости в «./», который вы иногда видите, это когда вы запускаете программу из рабочего каталога, который не находится в пути.
Если позже вы решите сделать это постоянным, чтобы ~ / .local / bin всегда был в вашей переменной PATH, вы можете сделать это, отредактировав некоторые файлы конфигурации среды. В зависимости от вашей настройки, например, в файле моей домашней папки «.bashrc», последняя строка «export PATH = $ PATH: $ HOME / bin». Так что я мог бы поместить $ HOME / local / bin в начало этого списка. Заметьте, я выписал $ HOME, а не "~". Тогда каждый раз, когда я использую оболочку BASH, PATH будет исправлен. Если вы можете использовать другие оболочки, я думаю, что правильнее всего отредактировать ~ / .profile. Я думаю, что все оболочки в Ubuntu будут источником этого файла.
В моем случае я установил несколько программ с pip3, таких как jupyter. Один из способов убедиться, где это было установлено, - запустить
$ pip3 list
показывает все доступные пакеты, а не только установленные pip3.
$ pip3 show jupyter
В моем случае, например:
---
Metadata-Version: 2.0
Name: jupyter
Version: 1.0.0
Summary: Jupyter metapackage. Install all the Jupyter components in one go.
Home-page: http://jupyter.org
Author: Jupyter Development Team
Author-email: jupyter@googlegroups.org
Installer: pip
License: BSD
Location: /home/pauljohn/.local/lib/python3.5/site-packages
Requires: nbconvert, ipykernel, ipywidgets, notebook, jupyter-console, qtconsole
Classifiers:
Intended Audience :: Developers
Intended Audience :: System Administrators
Intended Audience :: Science/Research
License :: OSI Approved :: BSD License
Programming Language :: Python
Programming Language :: Python :: 2
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
Programming Language :: Python :: 3.4
Я не хочу, чтобы это звучало как пламя, но это может выглядеть как атака. Я бы предупредил вас не охотно следовать советам, которые некоторые люди здесь предложат, для запуска "sudo pip3 xxx". Как правило, вы предпочитаете выполнять установки root только с пакетами Debian, а не с pip3. Если вы запускаете без sudo, вы ограничиваете опасность для учетной записи пользователя. Если вы запустили скрипт от имени root, вы можете разбросать файлы по всему жесткому диску и пожалеть об этом. Особенно, если другие пользователи входят в систему и используют этот компьютер, избегайте делать что-либо как root, если вы не уверены.
Также стоит отметить, что pip3 по умолчанию устанавливается в ~ / .local, но это не обязательно. Прочитайте "man pip3", найдите "-t" (--target). Вы можете указать каталог установки. Я думаю, что это хорошо, потому что вы можете ограничить любой ущерб одним каталогом и удалить его, когда захотите. ~ / .local может содержать в себе другие ценные вещи, установленные другими программами, и вы не захотите их уничтожать. В любом случае, я думаю о ~ / .local как о месте, где больше настроек, чем программ.