如何在Windows 7中查询netstat以查找特定本地地址的PID?

我经常在本地地址[::]:8080上启动服务器。 要终止服务器,我需要从netstat -aon获取PID

要终止这个服务器,我做taskkill /F /PID <found pid>

我想创buildWindowsbatch file,可以findPID并将其应用于调用taskkill /F /PID <found pid>

我怎样才能创build这样的batch file?

谢谢!

在我的PC上可能有一个UDP或TCP连接,它们需要稍微不同的代码:
测试一下taskkill命令是否正确,并删除echo来启用taskkill命令。

 @echo off for /f "tokens=5" %%a in ('netstat -aon ^|find " [::]:8080 " ^|find /i " TCP " ') do echo taskkill /F /PID %%a for /f "tokens=4" %%a in ('netstat -aon ^|find " [::]:8080 " ^|find /i " UDP " ') do echo taskkill /F /PID %%a 
 @echo off setlocal enableextensions set "port=8080" for /f "tokens=1,4,5" %%a in ( 'netstat -aon ^| findstr /r /c:"[TU][CD]P[^[]*\[::\]:%port%"' ) do if "%%a"=="UDP" (taskkill /F /PID %%b) else (taskkill /f /PID %%c) endlocal 

使用findstr检索所需的记录,使用for命令将其标记为获取PID列(第4个用于UDP,第5个用于TCP)并终止任务