Пытаясь выяснить, почему команда $ pip install всегда возвращает ошибки с кодом 1, я попытался войти в свой каталог pip из оболочки.
Я начал с бега
$ which pip
и получил
/Library/Frameworks/Python.framework/Versions/3.6/bin/pip
Когда я впоследствии бегу
cd /Library/Frameworks/Python.framework/Versions/3.6/bin/
и запускаю ls, получаю следующее:
который явно включает 'pip' в качестве каталога.
Однако когда я бегу
$ cd pip
Я получаю следующую ошибку.
bash: cd: pip: Not a directory
Как это возможно?
pip - это действительно не каталог. Следовательно, почему он в /bin/. Это двоичный файл exec.
Фактически pip как каталог модуля Python ЭТО. Попробуйте python -m pip вместо pip. Что это дает?
@Ingaz, но в этом случае он будет находиться в site-packets, а не в bin, верно? На этом снимке экрана кажется, что pip действительно является исполняемым файлом.
@eulerspython попытается запустить cat pip, чтобы убедиться, что это не файл.
@brandizzi Напишите cat $(where pip). Думаю, теперь должно быть ясно. (Если у вас where)






/Library/Frameworks/Python.framework/Versions/3.6/bin/pip - это не каталог; это исполняемый двоичный файл. Вы можете только cd в каталог.
Команда $ which pip возвращает исполняемый файл, который был бы выполнен, если бы pip был введен в приглашении оболочки. Взгляните на страница руководства для which.
На вашем снимке экрана не показано, что
pipявно включен в качестве каталога ... вы можете вместо этого сделатьls -la?