我想做点什么:
from subprocess import Popen
p = Popen(["vagrant", "ssh", "vmname", "-c", '"pvcreate -ff /dev/sdb"'])
但它需要用户输入。而且,那也没用。它们给出错误:bash: pvcreate -ff /dev/sdb: command not found
,因为它寻找的是一个带有参数的程序pvcreate -ff /dev/sdb
,而不是{
并采用了以下方法:
os.system("vagrant ssh vmname -c 'pvcreate -ff /dev/sdb'")
但是当它提示我时,我需要说是。我也试过这些方法:
os.system("yes | vagrant ssh vmname -c 'pvcreate -ff /dev/sdb'")
os.system("echo y | vagrant ssh vmname -c 'pvcreate -ff /dev/sdb'")
是否可以使用os.system
响应提示?在
我建议使用列表形式的调用。在
这表示将要传递的一组参数,从而消除了在shell引用时的混乱。在
相关问题 更多 >
编程相关推荐