我有这个python脚本(discord.py):
elif message.content.startswith('/mz stop'):
for line in os.popen("ps ax | grep /MYSCRIPT | grep -v grep"):
fields = line.split()
pid = fields[0]
os.system('kill -9 '+pid)
elif message.content.startswith('/mz start'):
bashCommand = "nohup bash start.sh"
process = subprocess.Popen(bashCommand.split(), stdout=subprocess.PIPE)
output, error = process.communicate()
如果我使用/ mz在/ mz停止之前不和谐地启动,则“ / mz停止”不起作用。但是,如果在命令“ / mz stop”之前执行该命令,则该命令将终止该进程。
/ mz开始后,我得到了这个:nohup: ignoring input and redirecting stderr to stdout
并且python stdout被杀死(我不能使用print()
)