Windowsのコマンドラインから特定のポートのステータスを調べる方法はありますか? netstatを使ってすべてのポートを調べることができることはわかっていますが、netstatは遅く、特定のポートを調べるのはおそらくそうではありません。
これが 簡単な解決策 /ポート発見の...です。
Cmdで:
netstat -na | find "8080"
Bashで:
netstat -na | grep "8080"
netstat
を-np
フラグおよびfind
またはfindstr
コマンドへのパイプと組み合わせて使用することができます。
基本的な使い方はそのとおりです。
netstat -np <protocol> | find "port #"
たとえば、TCPでポート80をチェックするには、次のようにします。netstat -np TCP | find "80"
これにより、次のような出力が得られます。
TCP 192.168.0.105:50466 64.34.119.101:80 ESTABLISHED
TCP 192.168.0.105:50496 64.34.119.101:80 ESTABLISHED
ご覧のとおり、これはTCPプロトコルのポート80の接続のみを示しています。
wAMP Apacheに問題があるときは、どのプログラムがポート80を使用しているかを見つけるためにこのコードを使用します。
netstat -o -n -a | findstr 0.0:80
3068
はPIDなので、タスクマネージャから見つけてそのプロセスを止めることができます。
私が使う:
netstat –aon | find "<port number>"
ここでoはプロセスIDを表します。これでプロセスIDを使って何でもできるようになりました。たとえば、次のようにしてプロセスを終了します。
taskkill /F /pid <process ID>
他の場所で述べたように、適切なスイッチを付けてnetstatを使用してから、find [str]で結果をフィルタリングします。
最も基本的な
netstat -an | find ":N"
または
netstat -a -n | find ":N"
あなたが使用することができる外国の港を見つけるために:
netstat -an | findstr ":N[^:]*$"
あなたが使用するかもしれないローカルポートを見つけるために:
netstat -an | findstr ":N.*:[^:]*$"
_ n _ は、興味のあるポート番号です。
-n
は、すべてのポートが数値であること、つまりサービス名に変換されたものとして返されないことを保証します。
-a
はすべての接続(TCP、UDP、リスニング...)を確実に検索します。
find
文字列では、ポート修飾子としてコロンを含める必要があります。それ以外の場合、番号はローカルアドレスまたは外部アドレスのいずれかと一致する可能性があります。
必要に応じて他のnetstatスイッチを使用して検索をさらに絞り込むことができます。
さらに読む(^ 0 ^)
netstat /?
find /?
findstr /?
netstat -a -n | find /c "10.240.199.9:8080"
それはあなたに特定のIPとポート(サーバーポート番号)でアクティブなソケットの数を与えるでしょう
Windows 8ユーザーの場合:コマンドプロンプトを開くには、 netstat -an |と入力します。 「あなたのポート番号」を見つけてください 、入力してください。
応答が _ listening _ のようになった場合、そのポートは使用中です。それ以外の場合は無料です。
外部ポート(IPv4またはIPv6)を見つけるには、次のようにします。
netstat -an | findstr /r /c:":N [^:]*$"
ローカルポート(IPv4またはIPv6)を見つけるには、次のようにします。
netstat -an | findstr /r /c:":N *[^ ]*:[^ ]* "
Nはあなたが興味を持っているポート番号です。 "/ r"スイッチはそれを正規表現として処理するように伝えます。 "/ c"スイッチを使用すると、findstrは、スペースを検索ストリング区切り文字として扱う代わりに、検索ストリング内にスペースを含めることができます。この追加されたスペースは、より長いポートが誤って処理されるのを防ぎます - 例えば、 ":80" vs ":8080"や他のポート管理問題.
ローカルRDPサーバーへのリモート接続を一覧表示するには、次のようにします。
netstat -an | findstr /r /c:":3389 *[^ ]*:[^ ]*"
または、誰があなたのDNSに触れているのかを見るために:
netstat -an | findstr /r /c:":53 *[^ ]*:[^ ]*"
ローカル専用ポートを除外したい場合は、 "/ v"を付けて一連の例外を使い、バックスラッシュを付けてエスケープすることができます。
netstat -an | findstr /v "0.0.0.0 127.0.0.1 \[::\] \[::1\] \*\:\*" | findstr /r /c:":80 *[^ ]*:[^ ]*"
ポート80の場合、コマンドは次のようになります。ポート "n"の場合、コマンドは次のようになります。 "n"を見つける
ここで、netstatはあなたのマシンへの命令です
-a:すべての接続と待機中のポートを表示します。-n:すべてのアドレスと命令を数値形式で表示します(-aからの出力にはマシン名を含めることができるため、これは必須です)。
次に、前のコマンドの出力を「パターン・マッチング」するための検索コマンド。
これはあなたを助けます
netstat -plan | grep :<port number>