我需要自动执行以下命令

cmd="yes | vgremove <vgname>"


每当我用

Popen(cmd.split(),stdout=PIPE,stderr=PIPE)


它没有完成。我怀疑它要等到命令完成后,才能敲打管道,是否有替代方法???

最佳答案

在这种情况下,有一种更简单的方法:

Popen('vgremove -f <vgname>')


至于你的问题具体:

p = Popen(cmd.split(), stdout=PIPE, stderr=PIPE, stdin=PIPE)
p.stdin.write('yes')

关于python - Popen一个命令,其中所有输出都需要回答"is",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54643045/

10-16 22:15