【发布时间】:2014-09-06 18:19:15
【问题描述】:
我有一个 Python 脚本,作为 ubuntu 新贵工作运行。我从 shell 开始:
sudo service my-service-name start
在服务本身的 Python 代码中,在某些情况下我需要重新启动服务。以下是我的做法:
import subprocess
import shlex
cmd = 'sudo service my-service-name restart'
subprocess.check_output(shlex.split(cmd), stderr=subprocess.STDOUT)
如果我从 shell 运行 cmd,我可以成功地重新启动我的新贵工作。如果我从作业本身运行它,作业会停止但永远不会再次启动。
以这种方式开始自己的新贵工作有什么问题吗?如果是这样,还有其他方法可以让暴发户的工作重新启动吗?
我重新启动作业的原因是我已经更新了磁盘上的底层 Python 代码,我希望重新启动作业以便它运行新代码。
【问题讨论】: