我只想收集运行此 netstat 命令时输出的 PID 值:
netstat -a -o -n -p tcp | findstr -i "CLOSE_WAIT"
我的目的是使用 PID 并创建一个将运行的脚本
taskkill /PID pidfoundhere
删除任何具有 CLOSE_WAIT 状态的套接字。
最佳答案
@echo off
for /f "tokens=5" %%a in ('
netstat -noa -p tcp ^| find /i "CLOSE_WAIT"
') do if not "%%a"=="0" echo taskkill /pid %%a
使用
for
命令使用空格作为分隔符分割行,获取行中的第 5 个标记,如果有 PID,则终止进程taskkill
命令只回显到控制台。如果输出正确,删除 echo
命令
关于command-line - 解析 Windows 命令行输出以获取 PID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26026160/