Probleme mit Expect -send: Spawn id exp4 nicht öffnen
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?
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