Frage

Mein Expect Code tut dies: Es funktioniert ein ssh auf einem anderen Rechner verbinden, sendet das Kennwort und gibt dann die Hostnamen dieser Maschine. Ich gebe eine Probe von meinem Code unten
#! / Usr / bin / erwarten -f
set ipaddr [lrange $ argv 0 0]
set password [lrange $ argv 1 1]
set Timeout -1
Laich ssh root @ $ ipaddr Hostnamen
match_max 100000
erwarten "* assword: *"
senden - "$ password \ r"
erwarten eof
Dieser Code läuft perfekt oft aber mit Unterbrechungen, ich folgende Fehlermeldung
erhalten senden: Spawn id exp4 nicht geöffnet
    während der Ausführung
"Send - "$ password \ r""
Warum passiert dies?

War es hilfreich?

Lösung

herausgefunden, warum. Ich hatte SSH-Schlüssel und kopiert es auf der Zielmaschine erzeugt. So war es kein „Passwort:“ prompt. Daher vor senden vervollständigen konnte, hatte die SSH-Verbindung geschlossen.

ich den SSH-Schlüssel aus der Zielmaschine gelöscht und lief das Skript erneut und beobachtete keine Probleme

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top