Warum Ihr Skript den Sockel schließt
Immer wenn ein Expect-Skript das Ende der Datei erreicht, werden alle erzeugten Prozesse geschlossen und beendet. Mit anderen Worten, es verhält sich derzeit wie geplant.
Halten Sie den Sockel für die Interaktion offen
Was fehlt, ist die Verwendung des Interaktionsbefehls, wenn Sie eine Eingabeaufforderung sehen. Zum Beispiel nach dem Senden Ihres Passworts:
expect {\$\s*} { interact }
In Ihrem speziellen Anwendungsfall können Sie einfach nach dem Senden Ihres Kennworts einfach interaktiv anrufen, ohne auf die Aufforderung zu warten. Das obige Beispiel ist jedoch in der Regel eine bessere Vorgehensweise, mit der Sie mit anderen Situationen umgehen können, wenn Sie sich dafür entscheiden.
Mit Interact können Sie tun, was Sie möchten: mit der SSH-Sitzung interagieren. Dies wird fortgesetzt, bis Sie die Verbindung schließen und der erzeugte Prozess beendet wird.