gpt4 book ai didi

python - 如何在 Python 中自动化交互式控制台应用程序?

转载 作者:太空宇宙 更新时间:2023-11-04 12:43:17 27 4
gpt4 key购买 nike

我想在 Python 中通过脚本控制正在运行的进程/程序。我有一个程序“linphonec”(您可以安装:apt-get install linphonec)。我的任务是:

  1. 运行linphonec(我现在正在使用子进程)
  2. linphonec 运行时,它有很多命令来控制它,我想使用例如 proxy list(linphonec 中的命令)。

简单流程:

test@ubuntu$ > linphonec
linphonec > proxy list

我该怎么做?

最佳答案

实际上有两种沟通方式:

myprogram.py 运行你的程序 | linphonec 将您打印的所有内容传递给 linphonec

使用subprocess.Popensubprocess.PIPE在构造函数中通过 keywrod-args for stdin(也可能是 stdout 和 stderr),然后是 communicate对于单个命令或使用 stdinstdout ( 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()

关于python - 如何在 Python 中自动化交互式控制台应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39544997/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com