我想杀死几个侦听特定端口的进程(例如2100和2101)。我可以通过它的端口杀死进程。但我想对多个端口(多个)
做同样的事情批代码(用于终止端口2100)
FOR /F "tokens=5 delims= " %%P IN ('netstat -a -n -o ^| findstr :2100.*LISTENING') DO taskkill /F /PID %%P
如何创建如下命令(杀死2100和2101)
FOR /F "tokens=5 delims= " %%P IN ('netstat -a -n -o ^| findstr :2100.*LISTENING OR 2101.*LISTENING') DO taskkill /F /PID %%P
答案 0 :(得分:3)
FOR /F "tokens=5 delims= " %%P IN ('netstat -a -n -o ^| findstr ":2100.*LISTENING 2101.*LISTENING"') DO taskkill /F /PID %%P
应该非常愉快地工作
答案 1 :(得分:2)
单个数字更改
FOR /F "tokens=5" %%P IN ('
netstat -noa ^| findstr /r /c:":210[01] .*LISTENING"
') DO taskkill /F /PID %%P
对于更复杂数字的更复杂情况(findstr中的正则表达式不允许|
)
for %%a in (2100 2101) do (
FOR /F "tokens=5" %%P IN ('
netstat -noa ^| findstr /r /c:":%%a .*LISTENING"
') DO taskkill /F /PID %%P
)
或者,如果列表很短(在这种情况下)
FOR /F "tokens=5" %%P IN ('
netstat -noa
^| findstr /l /c:"LISTENING"
^| findstr /l /c:":2100 " /c:":2101 "
') DO taskkill /F /PID %%P