まだ接続しようとしているときにtelnetを中止できますか?


12

時々、Windows XPから別のサーバーにtelnetで接続し、次のような間違ったポート番号を指定していることがあります。

c:\> telnet xxxxx.yy pp

Enterキーを押した後、間違ったポート番号を入力し、ctrl-cでtelnetプロセスを中止したいのですが、telnetはctrl-cにも応答しないようです。そのため、telnetが戻るまで数秒待つ必要があります

xxxxx.yyに接続しています... 
ポートppでホストへの接続を開けませんでした:接続に失敗しました

エラーメッセージを待つのはかなり面倒です。特に最終的にはそれが来ると既にわかっている場合はなおさらです。

では、telnetプロセスをすぐに停止する方法はありますか?


いいですね 回答を更新しました。
いんちきのキホーテ2009年

回答:


7

編集:もちろん、決して簡単なことではありません。ご存じのとおり、Microsoftのtelnetは^]接続を待機している間は応答しません。

待ちたくない場合は、2つのオプションしかありません。

  • (別のコマンドシェルまたはタスクマネージャから)telnetプロセスを強制終了します。または

  • 別のtelnetクライアントを使用します。 PuTTYは別のウィンドウとして起動するため、良い選択です。ポートを間違えてPuTTYウィンドウがフリーズした場合でも、コマンドシェルを使用して、正しいポート番号で別のインスタンスを起動できます。


エスケープ文字を使用します(デフォルトはCtrl+])。これにより、telnetプロンプトが表示され、接続を閉じたり、終了したりできます。

> telnet

Welcome to Microsoft Telnet Client

Escape Character is 'CTRL+]'

Microsoft Telnet> 

-eフラグを使用することで、コマンドラインでこれをほぼ任意に変更できます。

C:\>telnet /?

telnet [-a][-e escape char][-f log file][-l user][-t term][host [port]]
[...]
 -e      Escape character to enter telnet client prompt.
[...]

C:\>telnet -e '

Welcome to Microsoft Telnet Client

Escape Character is '''

Microsoft Telnet>

問題は、telnetがサーバーへの接続中にctrl-]に応答しないことです。
ルネニフェネガー2009年

4
これはほとんど何にも応答しないことを意味します。悪いtelnetクライアント、悪い。
いんちきのキホーテ2009年

好奇心が強い:-eフラグでどのエスケープ文字を試しましたか?改行ですか?バックスペース?
アルジャン

私?'示されているとおりに、単一引用符()。その出力は、winXP cmd.exeターミナルからキャプチャされました。
いんちきのキホーテ2009年

ああ、私は単一引用符では、と思ったtelnet -e 'のように、何かのオープニング引用しましたtelnet -e 'q'。私が推測する構文の強調表示によって混乱しています。:
アルジャン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.