Jak tymczasowo przełączyć się z ssh na moją lokalną powłokę?

12

Używam cygwina. i użyj go z ssh, aby zalogować się na serwerze Ubuntu. czasami chcę wrócić do mojego cygwina, a następnie szybko przejść do powłoki ubuntu. Jak to zrobić?

uwielbia wiosnę
źródło

Odpowiedzi:

21

Możesz ustawić klienta ssh w tle, tak jak każde inne zadanie powłoki, wysyłając mu sygnał i wracając do powłoki nadrzędnej. Ponieważ klient ssh przechwytuje większość naciśnięć klawiszy, przechwytuje normalne naciśnięcia klawiszy sterowania zadaniami powłoki, ale można zwrócić jego uwagę i przejść do powłoki za pomocą sekwencji ucieczki. W przypadku większości klientów ssh wiąże się to z wysłaniem ~bezpośrednio poprzedzonego znakiem nowej linii. Następująca sekwencja powinna wykonać zadanie:

Enter ~ Ctrl+Z

Po zawieszeniu możesz kontynuować korzystanie z lokalnej powłoki. Jeśli chcesz wrócić do zawieszonego zadania, po prostu uruchom fgpolecenie.

Aby przeczytać więcej, sprawdź Bash Job Control .

Caleb
źródło
3
Ładny; pobił mnie do tego. Aby uzyskać więcej informacji, uruchom man sshi wyszukaj „Escape Characters” lub wpisz ~?sesję ssh.
Jander
3

@ Odpowiedź Caleba jest dobra, ale możesz również rozważyć zainstalowanie terminalowego multipleksera, takiego jak screenlub tmux. Najwyraźniej (zgodnie z tym, co mogę znaleźć w Internecie) tmuxmiał pewne problemy z uruchomieniem Cygwina w przeszłości, ale nie wiem o jego obecnym statusie.

Kusalananda
źródło
2
Oba tmuxi z screenpewnością można je wykorzystać do rozwiązania problemu, przed którym stoi OP, ale rozpoczęcie pracy z multiplekserem to całkiem sporo rzeczy, które mogą pomóc ci po raz pierwszy. Być może mógłbyś rozszerzyć tę odpowiedź na dokładny zestaw poleceń tmux, aby uzyskać nowicjuszowi przez proces otwierania terminala, ssh'ing, detatching z powrotem do głównej powłoki, a następnie dołączanie ponownie ...
Caleb