Difference between revisions of "Ssh escape sequence"

From Ever changing code
Jump to navigation Jump to search
Line 5: Line 5:
= Escape Characters =
= Escape Characters =


When a pseudo-terminal has been requested, ssh supports a number of functions through the use of an escape character.
When a pseudo-terminal has been requested, ssh supports a number of functions through the use of an escape character. Although these are called '''Escape sequence''' in Ubuntu you need to press <code>Enter</code> to begin the Escape Sequence.


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.
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.

Revision as of 15:28, 29 September 2016

Restore access to hung SSH session

It is common problem of hung SSH session and having to close and reopen your terminal/putty. Use the following escape-char to quit your hung SSH session and get your shell back.

[ENTER] ~.

Escape Characters

When a pseudo-terminal has been requested, ssh supports a number of functions through the use of an escape character. Although these are called Escape sequence in Ubuntu you need to press Enter to begin the Escape Sequence.

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 for SSH protocol version 2 and if the peer supports it).
~C Open command line. Currently this allows the addition of port forwarding using the -L, -R and -D options. It also allows the cancellation of existing remote port-forwardings using -KR[bind_address:]port. !command allows the user to execute a local command if the PermitLocalCommand option is enabled in ssh_config. Basic help is available, using the -h option.
~R Request rekeying of the connection (only useful for SSH protocol version 2 and if the peer supports it).

Bash delete character correction

Delete key gives ~ ? Add the following line to your $HOME/.inputrc (might not work if added to /etc/inputrc )

"\e[3~": delete-char