我的服务器上运行的Python程序,并在我的账号在服务器上我已经在Python版本中的.bashrc文件设置如下脚本中:重启Python脚本具有相同的Python版本
alias python="python2.7"
我有一个Python脚本,我希望能够重新启动自己。它在本地工作正常,但是当我在服务器上重新启动它时,它会工作一次,然后切换到不同版本的python。我有以下功能:
def restartScript(self):
print("Restarting server")
print(sys.executable,['python']+sys.argv)
os.execv(sys.executable,['python']+sys.argv)
我第一次尝试重新启动它打印如下:
/usr/local/bin/python2.7 ['python', 'server.py']
但是我第二次运行服务器,它打印以下内容:
/usr/local/bin/python ['python', 'server.py']
这也给出了一个错误,因为我使用的模块是为/usr/local/bin/python2.7安装的,但是没有为/ usr/local/bin/python安装。
有没有一种简单的方法来确保服务器始终以/usr/local/bin/python2.7重新启动?我想让它更灵活,以便有人可以使用这种重启,无论他们是在.bashrc中定义了它们的默认版本的python还是正在使用虚拟环境。如果他们使用的是python 3或python 2,它也会喜欢它。
的可能的复制[在Linux两种版本的Python。如何使2.7默认](http://stackoverflow.com/questions/19256127/two-versions-of-python-on-linux-how-to-make-2-7-the-default) – Elodin
我想使其更灵活,以便有人可以使用此重新启动,无论他们是否已经在.bashrc中定义了它们的默认版本的python(如上所述)或正在使用虚拟环境。 – user1763510