回答:
SSH接続を終了するにはどうすればよいですか?
二つの方法:
exit
続けてEnter、またはCtrl-でd通常はssh
セッションを正常に終了できます)~.
、sshと入力すると、すぐに閉じてコマンドプロンプトに戻ります。最初のオプションは直感的である必要がありますが、後者のオプションをどのように知ることができますか?
この情報は、manページを注意深く読むことで知ることができます。
$ man ssh
エスケープ文字に関する次のセクションを含むSSHドキュメントを提供します。
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.
短い答え:タイプ exit
それでもうまくいかない場合は...
ほとんどのSSH実装は、telnetのCtrl-]
組み合わせと同様に、対話型セッション用のエスケープ文字を実装しています。デフォルトのSSHエスケープ文字は~
で、行の先頭に入力されます。
スタックしていて、リモート側のシェルに入っexit
たり入ったりCtrlDしても終了できないインタラクティブなOpenSSHセッションを終了したい場合は~
、ドットの後に入力できます.
。入力行の先頭にエスケープ文字を確実に入力するには、最初にEnterを押す必要があります。したがって、ほとんどの場合、次のシーケンスはSSHセッションを終了します。
Enter~.
たとえば、OpenSSHは、以外のエスケープシーケンスを提供します~.
。~?
セッション中に入力すると、リストが表示されます。いくつかの例:
~
その後Ctrl-Z
、セッションを中断し、~&
バックグラウンドに直接配置し、~#
このセッションで転送された接続のリストを提供します。 ~~
。エスケープ文字は、コマンドラインオプションを使用して変更できます-e
。特別な値を設定すると-e none
、エスケープが無効になり、セッションは完全に透過的になります。
コマンドラインオプションの下のssh(www.openssh.orgから参照されています)のOpenBSD manページも参照してください。-e
exit
またはに入るリモートシェルCtrl-D
がなく、リスニングプロセスだけであるケースを要求しました。私の解決策は行き詰まって終了できないセッションに適しているとはっきりと述べた。私はこれをもっと明確にしようとしましたが、今はもっと見やすくなっていることを願っています。
~.
でしたが、スペースがなかったことがまさに必要でした、ありがとう!:)
SSHシェルを終了しますか?
入力exit
してヒットEnterするか、Ctrl+を使用しますD
これらは、sshで遊ぶことができるさまざまなオプションを提供するサポートされているキャラクターです。
サポートされるエスケープシーケンス:
~. - terminate session
~B - send a BREAK to the remote system
~R - Request rekey (SSH protocol 2 only)
~# - list forwarded connections
~? - this message
~~ - send the escape character by typing it twice
(エスケープは改行の直後にのみ認識されることに注意してください。)を押すと、エスケープシーケンスのリストを閉じることができますEnter。
MacOS:sshがハングする場合、次のシーケンスを使用します。
ENTER
SHIFT+`
.
ここで、 shift + ` は〜(チルダ文字)を生成します