我对从python调用控制交互式CLI应用程序感兴趣。
我想在最基本的层面上我需要一个python脚本来启动主机操作系统上的CLI应用程序。管道从stdin到cli应用程序的任何内容,然后将cli应用程序的任何输出传递给stdout。
从这个基础开始对输入和输出进行一些处理非常简单
老实说,我可能只需要一个关于tecnique被调用的指针。我不知道我需要搜索什么。
答案 0 :(得分:12)
也许您需要Subprocess(MOTW)的内容。
我使用这样的代码来调用shell:
from subprocess import Popen, PIPE
## shell out, prompt
def shell(args, input=''):
''' uses subprocess pipes to call out to the shell.
args: args to the command
input: stdin
returns stdout, stderr
'''
p = Popen(args, stdin=PIPE, stdout=PIPE, stderr=PIPE)
stdout, stderr = p.communicate(input=input)
return stdout, stderr
答案 1 :(得分:5)
PExpect是否符合您的需求?