Wie wechsle ich vorübergehend von ssh zu meiner lokalen Shell?

12

Ich benutze Cygwin. und benutze es mit ssh, um dich bei einem Ubuntu-Server anzumelden. manchmal möchte ich zurück zu meinem cygwin und dann schnell zur ubuntu shell wechseln. Wie macht man das?

Liebesfeder
quelle

Antworten:

21

Sie können den ssh-Client wie jeden anderen Shell-Job im Hintergrund ausführen, indem Sie ihm ein Signal senden und zur übergeordneten Shell zurückkehren. Da der ssh-Client die meisten Tastenanschläge abfängt, werden die normalen Tastenanschläge der Shell-Jobsteuerung abgefangen, aber Sie können seine Aufmerksamkeit auf sich ziehen und mit einer Escape-Sequenz zur Shell durchgehen. Für die meisten ssh-Clients bedeutet dies das Senden ~einer Nachricht, der direkt ein Zeilenumbruch vorangestellt wurde. Die folgende Sequenz sollte die Arbeit erledigen:

Enter ~ Ctrl+Z

Nach dem Suspendieren können Sie die lokale Shell weiter verwenden. Wenn Sie zum angehaltenen Job zurückkehren möchten, führen Sie einfach den fgBefehl aus.

Weitere Informationen finden Sie unter Bash Job Control .

Caleb
quelle
3
Nett; schlag mich dazu. Führen Sie für weitere Informationen man ssh"Escape Characters" aus und suchen Sie danach, oder geben Sie ~?eine SSH-Sitzung ein.
Jander
3

@ Calebs Antwort ist gut, aber Sie könnten auch in Betracht ziehen, einen Terminal-Multiplexer wie screenoder zu installieren tmux. Anscheinend (nach dem, was ich im Web finden kann) tmuxhatte ich in der Vergangenheit einige Probleme mit Cygwin, aber ich weiß nicht, wie es derzeit aussieht.

Kusalananda
quelle
2
Sowohl tmuxund screenkann sicher verwendet werden , um das Problem zu lösen , das OP konfrontiert ist , aber die ersten Schritte mit einem Multiplexer ist ziemlich Haufen Zeug zu bekommen Ihren Kopf um die erste Zeit. Vielleicht könnten Sie diese Antwort auf eine genaue Reihe von Befehlen erweitern tmux, die einen Neuling durch das Öffnen eines Terminals, das Zurücksetzen auf die Haupt-Shell und das erneute Anhängen ...
Caleb