python-子进程,Popen不会写入进程

时间:2018-12-18 13:56:33

标签: python linux subprocess popen os.system

我尝试在linux上的ssh命令中使用python中的子进程。

args = 'ssh -tt -o NumberOfPasswordPrompts=1 -o StrictHostKeyChecking=no <myuse>@<my server>'
p = subprocess.Popen(args, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
p.communicate('password!\n')

当我运行代码时,似乎该过程没有成立,正在等待用户输入密码。它无法到达“通信”部分并接收密码。 我还尝试了“ p.stdin.write”和os.popen.write,但这也不起作用。

(我尝试将args用作shlex.split(args),但该命令根本无法运行,因此我将其保留为字符串)

有什么想法吗?谢谢!

我熟悉pexpect并期望-但是我只需要使用ssh命令/ bash和python中的内置库(例如子进程,操作系统等)来进行操作。

0 个答案:

没有答案