Difference between revisions of "Ssh escape sequence"

From Ever changing code
Jump to navigation Jump to search
Line 11: Line 11:
The supported escapes (assuming the default '~') are:
The supported escapes (assuming the default '~') are:


:~.' Disconnect.
:<code>~.</code> Disconnect.
:~^Z' Background ssh.
:<code>~^Z</code> Background ssh.
:~#' List forwarded connections.
:<code>~#</code> List forwarded connections.
:~&' Background ssh at logout when waiting for forwarded connection / X11 sessions to terminate.
:<code>~&</code> Background ssh at logout when waiting for forwarded connection / X11 sessions to terminate.
:~?' Display a list of escape characters.
:<code>~?</code> 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).
:<code>~B</code> 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 [http://linux.die.net/man/5/ssh_config ssh_config]. Basic help is available, using the -h option.
:<code>~C</code> 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 '''<tt>-KR[bind_address:]port. !command</tt>''' allows the user to execute a local command if the '''PermitLocalCommand''' option is enabled in [http://linux.die.net/man/5/ssh_config 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).
:<code>~R</code> Request rekeying of the connection (only useful for SSH protocol version 2 and if the peer supports it).


= Bash delete character correction =
= Bash delete character correction =
Delete key gives ~ ? Add the following line to your $HOME/.inputrc (might not work if added to /etc/inputrc )
Delete key gives ~ ? Add the following line to your $HOME/.inputrc (might not work if added to /etc/inputrc )
  "\e[3~": delete-char
  "\e[3~": delete-char

Revision as of 16:27, 14 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.

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