2016-11-10 5 views
2

kurz Q,macOS X seltsam Python

in einer Mac OS sierra-Terminal,

Wenn ich tun:

whereis python 
/usr/bin/python 

Dann, wenn ich tun: /usr/bin/python es öffnet Python 2.10

aber wenn ich python ausführen, öffnet es Python 2.7.8.

Woher weiß ich, whereis Python 2.7.8 und warum whereis auf eine andere Python-Version als die Standardversion verweist?

+0

Haben Sie ein '/ opt'-Verzeichnis von MacPorts übrig? – dawg

Antwort

7

whereis sieht nur in ein paar Standard-Orten. Verwenden Sie which -a python, um eine Liste der Verzeichnisse in Ihrer PATH-Variablen abzurufen, die python enthalten. Zum Beispiel auf meiner Maschine

$ whereis bash 
/bin/bash 
$ which -a bash 
/usr/local/bin/bash 
/bin/bash 
$ echo "$PATH" 
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin 

Wie, warum whereis berichtet nicht die python, die tatsächlich läuft, Notiz in meinem Beispiel, dass whereis berichtet nur /bin/bash. Jedoch /usr/local/bin erscheint früher in meinem PATH als /bin, so Eingabe bash allein an einer Eingabeaufforderung läuft die erste beim Scannen PATH gefunden. In Ihrem Fall haben Sie wahrscheinlich auch Python 2.7.8 in einem Verzeichnis, das früher in Ihrem Pfad als /usr/bin angezeigt wird.

+0

aktualisiert das Q, um zu reflektieren, was ich wirklich tun möchte – Dnaiel

+0

Sie sollten suchen oder eine neue Frage stellen, anstatt die Frage zu ändern, was auch immer Ihr aktuelles Problem ist. Auf diese Weise können Antworten für zukünftige Leser hilfreich sein, anstatt überflüssig zu werden. – wim

+1

@wim Ich habe das neue Q hier, danke http://stackoverflow.com/questions/40537880/change-python-version-in-terminal-and-intellij – Dnaiel