2015-05-16 3 views
4

Я заметил, что у меня есть $HOME/.local на моей машине и кажется, что этот каталог содержит в основном материал, связанный с python, here - это полный список (он немного длинный).

Я хотел бы спросить, какое действие создало этот каталог? Я полагаю, что это было pip install --user -r requirements.txt (ниже приведены команды, по которым я это понял), но мне интересно, есть ли там какие-либо инструменты, которые хранят данные здесь? Я полагаю, что это было pip, так что easy_install может это сделать или нет? Существуют ли какие-либо другие инструменты, о которых вы знаете, которые используют этот каталог, или это только pip?

После команды показывает, что некоторые питона модуль был импортирован из этого каталога, выход последнего является here (это немного долго):

[email protected]:~$ python -c 'import mock; print mock.__file__' 
/home/marek/.local/lib/python2.7/site-packages/mock.pyc 
[email protected]:~$ echo $PYTHONPATH 

[email protected]:~$ tree .local/ | grep mock 
│     ├── mock-1.0.1.egg-info 
│     ├── mock.py 
│     ├── mock.pyc 
│     │   ├── mock.py 
│     │   ├── mock.pyc 
[email protected]:~$ pip show -f mock 
--- 
Name: mock 
Version: 1.0.1 
Location: /home/marek/.local/lib/python2.7/site-packages 
Requires: 
Files: 
Cannot locate installed-files.txt 
[email protected]:~$ python -c 'import sys, pprint; pprint.pprint(sys.path)' 
['', 
'/home/marek/.local/lib/python2.7/site-packages/nupic-0.3.0.dev0-py2.7-linux-x86_64.egg', 
'/usr/lib/python2.7/dist-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', 
'/home/marek/.local/lib/python2.7/site-packages', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PILcompat', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/pymodules/python2.7', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client'] 
[email protected]:~$ python -v 2>&1 | tee modules 

following ответ говорит, что должно быть $HOME/.local/bin/hg в этом каталоге если он был создан с pip, но у меня нет этого файла. Так оно было создано с pip или нет?

ответ

5

Он напрямую не связан с Python, но Pip использует его. Начнем с самого начала. Во-первых, вы должны понимать, что каталог /usr используется для:

В настоящее время юниксы,/USR, где пользователи земельных программ и данных (в отличие от «системы земли» программы и данные) являются.

Он должен использоваться для данных, установленных системой, то есть официальных пакетов распределения.

Каталог /usr/local отражает структуру каталога /usr, но может быть использован системными администраторами для установки локальных или сторонних пакетов для всех пользователей.

Каталог ~/.local теперь имеет такую ​​же цель только для одного пользователя.

Обычно вы устанавливаете свои пакеты с помощью диспетчера пакетов по умолчанию, используя каталог /usr. Но поскольку вы используете Pip в качестве менеджера пакетов для своих модулей Python, они устанавливаются в ~/.local.

Так что в основном pip, возможно, создал ~/.local или любую другую программу, записывающую данные в один из расположенных там каталогов. Например, ~/.local/share используется большинством приложений для хранения своих данных.

Смежные вопросы