如何执行Linux实用程序并在Python中回答其答复



当我执行一个实用程序时,Blab,它会问是或否确认,我该怎么办?谢谢,

代码如下:

proc = subprocess.Popen("blab delete {}".format(num), shell=True,
                        stderr=subprocess.STDOUT, stdin=subprocess.STDIN)
stdout_value = proc.communicate()[0]

popen.communicate()文档:

如果要使用Python将数据发送到Process的STDIN,请使用stdin=PIPE创建POPEN对象。同样,要在结果元组中获得任何其他内容,您需要给出stdout = pipe和/或stderr =管道。

from subprocess import PIPE, Popen, STDOUT
process = Popen("blab delete {}".format(num), shell=True, stdin=PIPE, stdout=PIPE, stderr=STDOUT)
output = process.communicate(input=b'yes')[0]
output = output.decode('utf-8')

相关内容

最新更新