Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Релизация вывода для paramiko invoke_shell


(Виталий Коряков) #1

Добрый день.
Помогите, пожалуйста, разобраться как резализовать вывод для invoke_shell в paramiko.
Судя по доке, и stackoverflow, должно работать все работать, но не работает.

код

ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(ip, port, ssh_login, password)

channel = ssh_client.invoke_shell()

channel.send('pwd')
time.sleep(2)
output = channel.recv(10000)
print output
ssh_client.close()

выводит без аутпута команды.

Last login: Tue Mar 14 13:51:05 2017 from #.#.#.#
.......:~# pwd

Process finished with exit code 0

вручную все ок, аутпут /root

Last login: Tue Mar 14 13:51:05 2017 from #.#.#.#
.......:~# pwd
/root

Process finished with exit code 0

pwd - для примера, с другими командами та же ситуация.

Что не так?


(Виталий Коряков) #2

Разобрался.
команда должна заканчиваться переходом на новую строку:

channel.send('pwd\n')