您好,我的python安装在不同的目录中,我使用的是一个基于mac的docker镜像,它在shell脚本中将shebang行引用为/user/local/bin/python3。
我的python安装路径
Python 3.4.3 (default, Oct 14 2015, 20:28:29)
[GCC 4.8.4] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path
['', '/home/myuser/project', '/usr/lib/python3.4', '/usr/lib/python3.4/plat-x86_64-linux-gnu', '/usr/lib/python3.4/lib-dynload', '/usr/local/lib/python3.4/dist-packages', '/usr/lib/python3/dist-packages']
>>> 那么,有没有一种方法可以在不更改shebang行的情况下,重定向或链接到我的python3安装,以摆脱此错误。
是否建议在给定路径下安装python3。?
敬请指教。
发布于 2016-05-15 09:59:37
如果您不能修改文件的shebang,并且您可以访问创建docker镜像的docker文件,则可以添加一个命令指令来创建符号链接:ln -s /usr/bin/python3 /usr/local/bin/。如果您没有访问Dockerfile的权限。然后,您可以从正在运行的docker实例中运行上述命令。这应该可以在不修改文件的情况下解决您的问题。
发布于 2016-05-15 09:49:52
您可以像往常一样将shebang设置为"/usr/bin/env python“,然后适当地设置您的路径,以便正确的python版本位于您的可执行文件的路径中。在bash中,您可以在命令行上使用以下命令设置路径:
PATH=python/path:$PATH app为了控制哪个python/path/python $(which app)解释器正在运行,我有时会忽略shebang并输入python。
https://stackoverflow.com/questions/37233610
复制相似问题