「OpenSSH」- 命令 ssh 支持的转义序列」

在ssh中,输入[Enter][~][.]这三个键会直接退出当前连接。

由一次断网了,当前终端中的ssh连接不管输入什么都没有响应。由于情况特殊,所以不能直接关闭终端。你可以直接使用kill命令结束ssh连接。也可以使用ssh的转义字符。

当终端里的ssh连接没有响应时,可以依次输入[Enter][~][.],ssh会主动退出。即使终端里的ssh连接由响应,使用该按键序列也可以退出ssh,但是我们通常使用Ctrl + D组合键来退出。

所有的转义字符序列

下面是由ssh支持的转义序列,详细的内容可以查看man手册或者官方文档:

ESCAPE CHARACTERS
When a pseudo-terminal has been requested, ssh supports a number of

functions through the use of an escape character.

A single tilde character can be sent as ~~ or by following the tilde by

a character other than those described below. The escape character

must always follow a newline to be interpreted as special. The escape

character can be changed in configuration files using the EscapeChar

configuration directive or on the command line by the -e option.

The supported escapes (assuming the default ‘~’) are:

~. Disconnect.

~^Z Background ssh.

~# List forwarded connections.

~& Background ssh at logout when waiting for forwarded connection
/ X11 sessions to terminate.

~? Display a list of escape characters.

~B Send a BREAK to the remote system (only useful if the peer sup‐
ports it).

~C Open command line. Currently this allows the addition of port
forwardings using the -L, -R and -D options (see above). It

also allows the cancellation of existing port-forwardings with

-KL[bind_address:]port for local, -KR[bind_address:]port for

remote and -KD[bind_address:]port for dynamic port-forwardings.

!command allows the user to execute a local command if the

PermitLocalCommand option is enabled in ssh_config(5). Basic

help is available, using the -h option.

~R Request rekeying of the connection (only useful if the peer
supports it).

~V Decrease the verbosity (LogLevel) when errors are being written
to stderr.

~v Increase the verbosity (LogLevel) when errors are being written
to stderr.

参考文献

How do I exit a SSH connection?
exit out of all SSH connections in one command and close PuTTY