Jak mogę wysłać pojedyncze polecenie ssh, aby uzyskać ciąg wyników z pexpect?
Staram się, aby mój kod był jak najbardziej wydajny i prosty. Chciałbym uczynić moje polecenie pexpect w 1 linii:
Bieżące polecenie (uproszczone):
import pexpect
...
session=pexpect.spawn( 'ssh %s@%s'%(un,ip), timeout)
session.expect(prompt, timeout)
session.sendline('ls')
session.expect(prompt)
print session.before
Chciałbym to zrobić w moim poleceniu ssh, ale zwracam obiekt pexpect, czy istnieje sposób na zwrócenie tylko ciągu wyjściowego?
import pexpect
...
print str(pexpect.spawn( 'ssh %s@%s ls'%(un,ip), timeout))
Czy istnieje możliwość zmiany powyższego kodu, aby działał?
Muszę użyć pexpect lub standardowego pythona 2.4, nie paramiko :(