Команда python / usr / bin не найдена

13351

Система: Горный Лев 10.8.

Я попытался удалить Python 2.7 и, следовательно, я также удалил / usr / bin / python. Однако после этого мне снова понадобился Python, и я снова установил его. Теперь я хочу использовать easy_install для установки matlibplot и т. Д. К сожалению, он говорит:

-bash: /usr/bin/easy_install: /usr/bin/python: bad interpreter: No such file or directory 

а также / usr / bin / python:

-bash: /usr/bin/python: No such file or directory 

Однако, если я иду в / usr / bin / есть все версии Python.

Я также взглянул на / usr / bin / easy_install; первая строка говорит:

#!/usr/bin/python 

Кстати, я также установил Python 3.2, и он также не "виден" за пределами / usr / bin

Нужно ли исправить какие-либо переменные пути?

Спасибо за вашу помощь!

2
Что говорит "какой питон"? И чтобы быть параноиком, `echo $ PATH` проверяет, что` / usr / bin` находится в пути. 12 лет назад 1
Перейдите в каталог python и найдите команду easy_install, / path / to / easy_install , В любом случае это окна, но это может быть похоже на Mac. 12 лет назад 0
Какие-нибудь версии Python на самом деле называются "python" или такие вещи, как "python27" и "python32"? arxanas 12 лет назад 0
Что выдает pf `ls -l / usr / bin / python *`? ernie 12 лет назад 0
@DanielFischer, который говорит python / opt / local / bin / python 12 лет назад 0
@ernie ls -l говорит, что только корневое колесо lrwxr-xr-x 1 75 28 июля 16:27 /usr/bin/python2.5 -> ../../System/Library/Frameworks/Python.framework/Versions/2.5 /bin/python2.5 lrwxr-xr-x 1 корневое колесо 82 28 июля 16:27 /usr/bin/python2.5-config -> ../../System/Library/Frameworks/Python.framework/Versions/ 2.5 / bin / python2.5-config lrwxr-xr-x 1 корневое колесо 75 28 июля 16:27 /usr/bin/python2.6 -> ../../System/Library/Frameworks/Python.framework/Versions /2.6/bin/python2.6 lrwxr-xr-x 1 корневое колесо 82 28 июля 16:27 /usr/bin/python2.6-config -> 12 лет назад 0
Хорошо, это объясняет, почему он не найден в `/ usr / bin`. Сделайте символическую ссылку. 12 лет назад 0
@ernie и более того ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6-config, но, зайдя в / usr / bin / i, я вижу: python python2.5 python2.7 -config python3.2-config pythonw2-32 pythonw3-32 python-32 python2.5-config python3 python3.2m pythonw2.5 pythonw3.2 python-config python2.6 python3-32 python3.2m-config pythonw2.6 pythonw3. 2-32 python2 python2.6-config python3-config pythonw pythonw2.7 python2-32 python2.7 python3.2 pythonw-32 pythonw2.7-32 python2-config python2.7-32 python3.2-32 pythonw2 pythonw3 12 лет назад 0
@DanielFischer - символическая ссылка типа: ln -s /opt/local/bin/python2.7 / usr / bin / python? 12 лет назад 0
Если это то, на что указывает `/ opt / local / bin / python`, это нормально. 12 лет назад 0
Большое спасибо за Вашу помощь! Теперь все гораздо понятнее! 12 лет назад 0

2 ответа на вопрос

1

Вероятно, отсутствует символическая ссылка. Пытаться:

ln -s /usr/bin/python3.2 /usr/bin/python 

Возможно, вам придется заменить первый аргумент на имя исполняемого файла python, который вы нашли в / usr / bin

`python3` может быть более предпочтительным для python3.2. `python` должен быть зарезервирован для Python 2 jfs 12 лет назад 1
Спасибо за ответ. Затем приведенный выше код следует изменить на символическую ссылку на python 2. *, чтобы заставить shebang работать в easy_install 12 лет назад 0
1
ernie

Как вы упомянули в комментарии, ls -l /usb/bin/python*показывает:

 lrwxr-xr-x 1 root wheel 75 28 Jul 16:27 /usr/bin/python2.5 -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5  lrwxr-xr-x 1 root wheel 82 28 Jul 16:27 /usr/bin/python2.5-config -> ../../System/Library/Frameworks/Python.framework/Versions/2.5/bin/python2.5-conf??ig  lrwxr-xr-x 1 root wheel 75 28 Jul 16:27 /usr/bin/python2.6 -> ../../System/Library/Frameworks/Python.framework/Versions/2.6/bin/python2.6  lrwxr-xr-x 1 root wheel 82 28 Jul 16:27 /usr/bin/python2.6-config 

Обратите внимание, что нет /usr/bin/python.

Как упоминалось в @Wouter, вам нужно создать символическую ссылку:

ln -s /usr/bin/python2.6 /usr/bin/python 

Это будет создавать символические ссылки (думать о нем, как ярлык в Windows), от /usr/bin/pythonк/usr/bin/python2.6

Для более подробной информации вы упомянули первую строку /usr/bin/easy_install:

#!/usr/bin/python 

Это обычно называется строкой shebang и сообщает сценарию, какой интерпретатор использовать - в данном случае он пытается использовать /usr/bin/python, которого, как мы видели из команды ls, не существует, поэтому мы создаем символическую ссылку

Большое спасибо за Вашу помощь! Теперь все гораздо понятнее! 12 лет назад 0