在一个Python环境中,我输入whereis python
,并获得以下信息
python: /usr/bin/python2.6 /usr/bin/python2.6-config
/usr/bin/python /usr/lib/python2.6 /usr/lib64/python2.6
/usr/X11R6/bin/python2.6 /usr/X11R6/bin/python2.6-config
/usr/X11R6/bin/python /usr/bin/X11/python2.6
/usr/bin/X11/python2.6-config /usr/bin/X11/python
/usr/include/python2.6 /usr/share/man/man1/python.1.gz
但是当我输入python --version
时,它返回Python 3.4.5
whereis python
和{whereis python
的结果包括几个文件夹名,包括python2.6
。在
除了以上信息,我还尝试了which
和{
这并不矛盾。whereis查看PATH环境变量中给定的所有路径,标识包含可执行python命令的每个目录。在
另一方面,python version调用shell的消歧规则所指示的python(对于该规则,路径只是一个因素),并报告该可执行文件的版本。检查别名和其他环境设置以了解python的本地含义,例如
这能解开谜团吗?在
问题编辑回复
这告诉我们,shell将命令python解析为特定的可执行文件/devl/tf_0.12/bin/python。我不知道/devl中有什么;对于我熟悉的基于UNIX的世界来说,这不是一个标准位置。但是,如果运行
/devl/tf_0.12/bin/python version
,应该会看到与之前相同的3.4.5。在相关问题 更多 >
编程相关推荐