问题描述
在尝试使用Paramiko SSH到服务器后,我试图使用递归函数查找提示。 一旦它在ssh通道的返回中找到“ admin:”,我想运行以返回“ True”。 但是以下内容仅返回“ None”,即使我取消对调试语句的哈希处理,我也可以看到在ssh通道中找到了elif条件,因为它是“ admin:”,并已添加到var“ buffer”中,但是返回仍然是None。我想念什么?
import paramiko
node = 'hostname'
username = 'administrator'
password = '****'
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(hostname=node,username=username,password=password)
print('Connecting: ',node)
conn = client.invoke_shell()
def init_conn(buffer=''):
#print("'admin' in buffer: ",'admin' in buffer)
output = conn.recv(65535)
buffer += str(output)
if 'admin:' not in buffer:
#print('ENTERING IF STATEMENT')
init_conn(buffer)
elif 'admin:' in buffer:
#print('ENTERING ELSE STATEMENT')
#print(buffer,'\n')
return True
print(init_conn())
client.close
print('\n\nConnection Closed: ',node)
谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)