我正在编写一个运行以下命令的 python 程序:
import subprocess
import time
def fun1():
terminal1 = ['gnome-terminal']
terminal1.extend(['-x', 'sh', '-c', '"roscore"'])
pid = subprocess.Popen(terminal1, stdout=subprocess.PIPE)
time.sleep(3)
print "success1"
fun2()
def fun2():
terminal2 = ['gnome-terminal']
terminal2.extend(['-x', 'sh', '-c', '"rosrun rosserial_python serial_node.py /dev/ttyACM0"' ])
pid2 = subprocess.Popen(terminal2, stdout=subprocess.PIPE)
print "success2"
fun1()
fun1 工作正常,我等待 3 秒,因为它会持续一段时间,直到一切都完成,这样 fun2 才能工作(我不能同时启动两者,fun2 必须等待 fun1,这在 fun2 之前永远不会结束)
运行 fun2 时出现问题,我不知道错误在哪里,是与 fun1 中的“相同”代码,但 gnome-terminal 仅出现几毫秒然后消失...
有什么建议吗??
先感谢您