У меня есть следующий код
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.client.AutoAddPolicy())
privatekeyfile = 'PK_FILE_PATH'
username ="USERNAME"
mykey = paramiko.RSAKey.from_private_key_file(privatekeyfile)
client.connect(hostname= IP, username=username, pkey=mykey)
command = SERVER_COMMAND
stdin, stdout, stderr = client.exec_command(command)
while not stdout.channel.exit_status_ready():
if stdout.channel.recv_ready():
stdoutLines = stdout.readlines()
print stdoutLines
На выполнение команды, которую я выполняю, уходит около 10 секунд.Сначала он возвращает некоторую информацию (профиль пользователя и версию модуля), затем запускает некоторый код для проверки состояния некоторых ресурсов локального сервера.
Paramiko закрывает соединение после получения информации начального заголовка.Мне нужно, чтобы он дождался полного вывода команды serveride для возврата.Я попытался реализовать решение Тинтина здесь, с тем же результатом
Есть идеи?