Windowsでアプリが使用しているポートを確認してKillする方法

はじめに

ローカル環境にTomcatとかApacheを立ててテストしてると、プロセスだけ生き残って正常な状態で使えなくなること(ゾンビプロセス)にごくまれに遭遇することがあります。

そんなときには、今回紹介する方法でプロセスをKillすることができます。
Linux系OSでは、結構メジャーなポート確認とkillですが、Windowsでは若干マイナーな感じがしますが、コマンドプロンプトさえあれば2ラインでできる技です。

[スポンサーリンク]

ポート確認する方法

Portを確認するには、netstat -naoコマンドを使います。
少し見にくいですが、以下の場合だと3004がプロセスのIDになります。

C:\>netstat -nao
アクティブな接続
プロトコル ローカル アドレス 外部アドレス 状態 PID
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 3004

プロセスをKillする方法

プロセスをKillするには、taskkill /F /PIDコマンドを使います。
以下のコマンドで、先ほどの3004がプロセスのIDをKillしてみます。

C:\>taskkill /F /PID 3004

さいごに

わたしはJunitでJettyをよく使うのですが、途中でJunitを止めるとゾンビプロセスになってしまい、プロセスを毎回killしなければならない状態になります。。
このページはそんなわたしの備忘録です。(笑)

ApacheやMySQLが正常にストップできない時に、今回の方法でKillすることももちろんできます。
あまりオススメはしませんが。。。
それでは!