无法与solaris 10上的subprocess.Popen创建的进程通信

时间:2013-10-29 12:45:03

标签: python subprocess solaris-10

在linux上,这将成功更改用户密码。

subprocess.Popen('passwd', shell=True, stdin=subprocess.PIPE, stdout=None)
subprocess.communicate(input='abc\nabc')

但在solaris上,我发现在我调用之后:

subprocess.Popen('iscsiadm modify -C iqn.xxx-xx.xxx', shell=True, stdin=subprocess.PIPE,        stdout=None)

它仍会显示“Enter Secret”提示并要求输入密码。除了输入密码,我什么也做不了。当前的shell仍然属于iscsiadm进程。

我需要包装这个iscsiadm提示输入密码并安静地运行它。但现在这里似乎有些不对劲。

编辑: 为什么有一些程序实现只接受来自终端的输入。如上例所示,linux passwd和solaris iscsiadm之间有什么区别。

0 个答案:

没有答案