我的代码:#!/usr/bin/env python
# encoding: utf-8
import paramiko
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect('10.X.X.X',username='user',password='password')
stdin, stdout, stderr=ssh.exec_command("get system status")
type(stdin)
stdout.readlines()
就像我想的那样简单,但是跑步会带来回溯:
^{pr2}$
我有点困惑,也许我是瞎子,但我找不到问题所在。在
谢谢
显然:通过“正常”ssh连接并运行此命令非常好:-)
我改为python2.7(Mac上的默认版本)并完全删除了3.5的安装。
我现在得到了一个不同的错误(尽管仍然是EOFError):Traceback (most recent call last):
File "/Users/adieball/Dropbox/Multiverse/Programming/workspace/FortiNet/src/runCommand.py", line 8, in
ssh.connect('10.X.X.X,username='user',password='password')
File "build/bdist.macosx-10.11-intel/egg/paramiko/client.py", line 325, in connect
File "build/bdist.macosx-10.11-intel/egg/paramiko/transport.py", line 492, in start_client
EOFError
如前所述,我可以用“普通”ssh很好地连接到设备。
我还测试了python的连接性:import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(0.5)
try:
s.connect(('10.2.2.254',22))
except Exception, e:
print 'connection failed'
else:
print "success"
s.close()
它成功了(也就是印刷的“成功”),但无论出于什么原因,帕拉米科似乎无法联系上。
我在pythonshell中一步一步地尝试我的代码,以查看错误何时发生以及之后发生的情况ssh.connect('10.X.X.X',username='user',password='password')