使用Python将命令发送到远程计算机应用程序

时间:2013-08-14 14:07:52

标签: python subprocess remote-access telnetlib

我想在Python中执行以下操作。 连接到远程计算机,在那里打开应用程序,然后向此应用程序发送一些命令。 我的想法是通过telnetlib和subprocess来完成它。 我设法连接到机器并启动应用程序(仅使用telnetlib),但我不知道如何继续。 有可能吗?

P.S。我也愿意以另一种方式做到这一点,但我更愿意用python做。

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

child = pexpect.spawn('telnet 192.168.0.1')
child.expect('[Ll]ogin') #you use the expected output, here will match either Login or login
child.sendline('username')
child.expect('[Pp]assword')
child.sendline('password')
child.expect('your remote prompt')
child.sendline('command')

您可以使用pip安装pexpect

您还可以列出期望列表:

index = child.expect['[Ll]ogin', '[Pp]assword']
if index == 0:
    child.sendline('username')
else index == 1:
    child.sendline('password')