Короткий ответ: Однако, если это не работает… exit
SSH Escape Character and Disconnect Sequence
Большинство реализаций SSH реализуют экранирующий символ для интерактивных сессий, подобно комбинации Ctrl-]
в telnet. По умолчанию экранирующий символ SSH - ~
, введенный в начале строки.
Если вы хотите прервать интерактивную сессию OpenSSH, которая застряла и не может быть прервана вводом exit
или CtrlD в оболочку на удаленной стороне, вы можете ввести ~
, а затем точку .
. Для того, чтобы убедиться, что вы вводите экранирующий символ в начале строки ввода, вы должны сначала нажать Enter. Таким образом, следующая последовательность в большинстве случаев завершит сеанс SSH:
Enter~.
Other Escape Sequences
OpenSSH, например, предлагает другие экранирующие последовательности, кроме ~.
. Ввод ~?
во время сессии должен дать вам список. Некоторые примеры:
~
последующая Ctrl-Z
приостанавливает сессию,
~&
помещает ее прямо в фон,
~#
дает список пересылаемых соединений в этой сессии.
- Если вы хотите просто ввести тильду в начале строки, вы должны удвоить его:
~~
.
Экранирующий символ может быть изменен с помощью опции командной строки -e
. Если вы установите специальное значение -e none
, экранирование будет отключено и сессия будет полностью прозрачной.
См. также страница man на ssh (на которую ссылаются из www.openssh.org ) под опцией командной строки -e
.