我正在尝试使用linux nohup命令运行一个名为compare.py的python程序,该程序使程序保持运行,直到它完成而不会中断。我的python程序包含只能在python 2.7上运行的软件包,当我使用nohup命令时,程序运行在python 2.6中。使用nohup时如何更改python的版本?
示例:nohup python compare.py $
我尝试过: 别名python = python2.7
在启动程序之前,没有切换python的版本。当我运行nohup时如何将python的版本切换到2.7?
答案 0 :(得分:1)
最简单的方法是使用shebang行来指定解释器。在Python文件的开头,添加类似
的内容#!/usr/bin/python2.7
# This should be a path to an interpreter that you know for sure is Python 2.7
然后,使用chmod +x file.py
使Python文件本身可执行,并省略nohup命令的python
部分,例如。 nohup ./compare.py
。
答案 1 :(得分:1)
我和anaconda python有同样的问题。在使用nohup python时,它使用的是python 2.7,但终端中的泛型python命令将我带到了3.6。
nohup ~/anaconda3/bin/python scriptname.py
在nohup命令之后提供python的完整路径将解决问题