Imagine um cenário em que estou logado em um servidor (que chamaremos de "Wallace") da minha máquina local e de lá ssh
em outro servidor (que chamaremos de "Gromit"):
laptop ---ssh---> Wallace ---ssh---> Gromit
Então a sessão ssh de Wallace a Gromit trava, e eu quero matá-la. Se eu entrar ~.
para matar ssh, ela matará a sessão ssh do meu laptop para Wallace, porque ela ~
é interceptada por essa sessão ssh e .
é tomada como um comando para matar a sessão. Como envio um comando para a sessão ssh entre Wallace e Gromit? Como eu mato meu ssh "interno"?
Respostas:
Adicione outro til (ou seja, tipo
~~.
). Cada til sucessivo é comido pela sessão ssh mais externa que ainda não comeu uma, mas se o próximo personagem for outro til, ele será passado para a próxima sessão em.Se, a partir do gromit 1 , você transferisse para um terceiro host (vamos chamá-lo de wensleydale), então
~~~.
encerraria a sessão em wensleydale e retornaria você a um prompt no gromit.1 E que ótimo servidor; Quantas vezes eu ouvi um desenvolvedor comentar "cracking host, gromit"?
fonte
laptop --> Wallace --> Gromit --> Shaun --> Timmy
ou algo louco assim ...Você pode emitir comandos arbitrários e capturar a saída do shell mais interno em uma variável
fonte