2015-01-23 5 views
1

Я установил Python 2.7 на свой Mac с MacPorts (https://www.macports.org/).Mac OS X 10.10 MacPorts Python select

После установки я установить переменную $ PATH, чтобы включить в каталог MacPorts, который работал отлично:

$ echo $PATH 
/opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 

Тогда я поставил версию я хочу использовать с питона-селектор:

$ sudo port select --set python python27 

из этого списка:

$ sudo port select --list python 
Password: 
Available versions for python: 
    none 
    python26-apple 
    python27 (active) 
    python27-apple 
    python34 

Теперь, чтобы проверить, если все работало хорошо я это делаю и получить странный результат:

$ which python 
python is /opt/local/bin/python 
python is /usr/bin/python 

Так что теперь я не уверен, что происходит. Терминал Python использует правильную версию, и все, кажется, работает до сих пор. Но я ожидал, что только одна версия python будет активной. Это плохо? Есть ли что-нибудь, что я могу или должен сделать?

Thx!

ответ

1

Я не уверен, где ваш which приходит (проверить с which which) и косвенно ли передавать любые флаги which (проверить с type which), но это выход я бы ожидать, если бы вы назвали which -a python.

Кстати, если вы пытаетесь выяснить, что будет делать ваша оболочка при вводе python, вы должны использовать type python, который является оболочкой. У этого есть преимущество использования кеша оболочки (поэтому он не покажет вам /opt/local/bin/python, в то время как ввод python по-прежнему дает вам /usr/bin/python, потому что вы не запустили hash -r или открыли новую оболочку) и учитывает псевдонимы и функции оболочки.

Краткая история: хорошо выглядит так, как есть.

+0

Спасибо, что нашли время для этой довольно тривиальной проблемы. У меня было «что» с псевдонимом «type -all». Теперь я знаю, почему я получил две версии. – cowhi

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