我想通过Python中的脚本来控制正在运行的进程/程序。 我有一个程序`linphonec'(你可以安装:apt-get install linphonec)。 我的任务是:
linphonec
(我目前正在使用子流程)linphonec
正在运行时,它有许多命令来控制它,我想使用proxy list
(linphonec
中的命令)。简单流程:
test@ubuntu$ > linphonec
linphonec > proxy list
我该怎么做?
答案 0 :(得分:0)
实际上有两种沟通方式:
使用myprogram.py | linphonec
运行您的程序,将print
的所有内容传递给linphonec
在构造函数中使用subprocess.Popen通过keywrod-args为stdin(也可以是stdout和stderr)使用subprocess.PIPE然后communicate用于单个命令或使用stdin和stdout(stderr)作为文件
import subprocess
p=subprocess.Popen("linphonec",
stdin=subprocess.PIPE,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
universal_newlines=True) #this is for text communication
p.stdin.write("proxy list\n")
result_first_line=p.stdout.readline()