Как прочитать только последний буфер из команды telnetlib

У меня есть следующий код Python:

import telnetlib
ts = telnetlib.Telnet('192.168.0.2')
ts.set_debuglevel(10)
ts.read_until("assword:", 5)
ts.write("xxxxx\n")
ts.write("enable\n")
ts.read_until("assword:", 5)
ts.write("xxxxx\n")
ts.write("term len 0\n")
ts.write("show start\n")

Но как я могу прочитать буфер только из команды "show start"? Если я попытаюсь прочитать read_all (очень) или read_all(), я получу также весь предыдущий вывод. Я в замешательстве, потому что похоже, что я должен разобрать строку на моем собственном wrrr:(Может, я не прав?

1 ответ

Попробуйте использовать ts.read_until("") перед командой, вывод которой вы хотите получить

import telnetlib  
ts = telnetlib.Telnet('192.168.0.2')  
ts.set_debuglevel(10) 
ts.read_until("assword:", 5)  
ts.write("xxxxx\n")  
ts.write("enable\n")  
ts.read_until("assword:", 5)  
ts.write("xxxxx\n")   
ts.read_until("")  #Add this line  
ts.write("term len 0\n")   
ts.write("show start\n")`
Другие вопросы по тегам