通过python启动多个屏幕命令

时间:2017-04-07 10:55:51

标签: python python-3.5

我有多个python文件要运行。如何在一个.py脚本中启动所有这些文件?这就是我想出来的,但它显示了屏幕动作,除非我退出它,否则它确实没有开始其他的东西。这是代码,不多:

import os 

print("Launching Bot, just for you.")
print("Loading up shard 0")
try:
    os.system("screen python3.5 run_0.py > /dev/null")
except:
    print("Shard 0 failed")
print("Loading up shard 1")
try:
    os.system("screen python3.5 run_1.py > /dev/null")
except:
    print("Shard 1 failed")

print("Done running shards...")

我正在做一些研究,他们说使用子进程,但是当我使用它时,它没有正确运行我的命令。 (我没有该代码的副本,我丢失了它。)

问题是我想运行python脚本并且它工作正常但我必须关闭屏幕以启动另一个,我只是想让它运行显示输出的命令。你能帮忙吗?

1 个答案:

答案 0 :(得分:1)

您应该在python文件中使用import subprocess。然后,您可以使用以下命令启动其他程序的其他实例:

subprocess.Popen([sys.executable, "newprogram.py"])

您可以将其与multiprocessing包混合,以按新程序启动一个帖子

p = multiprocessing.Process(target= mp_worker , args=( ))
p.start()

其中mp_worker启动其他程序。