¿Cómo cambiar temporalmente de ssh a mi shell local?

12

Estoy usando cygwin. y úselo con ssh para iniciar sesión en un servidor ubuntu. a veces, quiero volver a mi cygwin y luego cambiar rápidamente a ubuntu shell. ¿Como hacer esto?

primavera amorosa
fuente

Respuestas:

21

Puede crear un fondo del cliente ssh como cualquier otro trabajo de shell enviándole una señal y volviendo al shell principal. Dado que el cliente ssh atrapa la mayoría de las pulsaciones de teclas, tomaría las pulsaciones de teclas normales del control de trabajo del shell, pero puede llamar su atención y llegar al shell utilizando una secuencia de escape. Para la mayoría de los clientes ssh, esto implica enviar un mensaje ~que haya sido precedido directamente por una nueva línea. La siguiente secuencia debería hacer el trabajo:

Enter ~ Ctrl+Z

Después de suspenderlo, puede continuar utilizando el shell local. Cuando desee volver al trabajo suspendido, simplemente ejecute el fgcomando.

Para leer más, busque Bash Job Control .

Caleb
fuente
3
Agradable; vencerme Para obtener más información, ejecute man sshy busque "Escape Characters", o escriba ~?una sesión ssh.
Jander
3

La respuesta de @ Caleb es buena, pero también podría considerar instalar un multiplexor de terminal como screeno tmux. Aparentemente (de acuerdo con lo que puedo encontrar en la web) tmuxha tenido algunos problemas con la ejecución en Cygwin en el pasado, pero no sé sobre el estado actual de la misma.

Kusalananda
fuente
2
Ambos, tmuxy screenciertamente se pueden usar para resolver el problema que enfrenta el OP, pero comenzar con un multiplexor es un montón de cosas para entender la primera vez. Tal vez podría expandir esta respuesta a un conjunto exacto de comandos para tmuxque un recién llegado atraviese el proceso de abrir un terminal, enviar, desconectar de nuevo al shell principal, y luego volver a conectarlo ...
Caleb