Python: SSH in Cisco-Gerät, und führen Sie Befehle angezeigt
Ich gelesen habe über diesen post und ausgiebig erforscht haben, Exscript, paramiko -, Stoff-und pxssh und ich bin immer noch verloren Persistente ssh-Sitzung für Cisco-router . Ich bin neu in python-scripting.
Ich bin versucht zu schreiben, ein Skript in Python, SSH in ein Cisco-Gerät, führen Sie "show version", die Ergebnisse anzeigen in notepad, dann beenden Sie das Skript.
Kann ich das arbeiten mit show-Befehlen, die nicht erfordern, dass der Benutzer die Interaktion mit dem Gerät. Zum Beispiel:
from Exscript.util.interact import read_login
from Exscript.protocols import SSH2
account = read_login()
conn = SSH2()
conn.connect('192.168.1.11')
conn.login(account)
conn.execute('show ip route')
print conn.response
conn.send('exit\r')
conn.close()
Das obige Skript zeigt die Ergebnisse von "show ip route".
Wenn ich versuche, conn.execute('version anzeigen') das Skript mal aus, weil das Cisco-Gerät erwartet der Benutzer drücken Sie die Leertaste um fortzufahren, drücken Sie return zur Anzeige der nächsten Linie oder eine beliebige Taste, um wieder auf die Kommandozeile.
Wie kann ich das ausführen des Befehls show version, drücken Sie die Leertaste zweimal, um anzuzeigen, die gesamte Ausgabe des Befehls show version, dann drucken Sie es in python?
Danke!!!!!!
InformationsquelleAutor der Frage D3l_Gato | 2011-08-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Versuchen Sie es ausführen
terminal length 0
vor der Ausführungshow version
. Zum Beispiel:Aus der Cisco terminal-docs: http://www.cisco.com/en/US/docs/ios/12_1/configfun/command/reference/frd1003.html#wp1019281
InformationsquelleAutor der Antwort peterjmag
Ersten ausführen
deaktivieren paging.
InformationsquelleAutor der Antwort MattH
Fragte ich eben die gleiche Sache und der folgende code wird ausgeführt, aus einer Liste und erhalten die Informationen, die Sie fordern.
InformationsquelleAutor der Antwort Chris Jones