Using only built-in commands and utilities, I have scripted WhatConnections.bat to display the Protocol, Local Address, Foreign Address, State, PID, Image Name, Session Name, and Session number for each connection on a computer.

The syntax for using WhatConnections.bat is WhatConnections.

The output is displayed on the console in the following CSV (Comma Separated Value) format:

"Proto","Local Address","Foreign Address","State","PID","Image Name","Session Name","Session Number"
You can easily write the output to a file using:


You can process the output using:

for /f "Tokens=1-8 Delims=," %%a in ('whatconnections') do (                               set proto=%%a                               set lclA=%%b                               set frnA=%%c                               set state=%%d                               set pid=%%e                               set img=%%f                               set sname=%%g                               set snumb=%%h                               call :DoSomeThing                              )
WhatConnections.bat contains:
@echo off                              setlocal ENABLEDELAYEDEXPANSION                              set fnd1=FIND /I /V "Active Connections"                              set fnd2=FIND /I /V "Proto  Local Address"                              for /f "Tokens=1-5" %%a in ('netstat -aon^|%fnd1%^|%fnd2%') do (                               set state=%%d                               set pid=%%e                               if "!pid!" EQU "" set pid=%%d&set state=NONE                                for /f "Tokens=1-4 Delims=," %%i in ('TASKLIST  /NH /FO CSV /FI "PID eq !pid!"') do (                                @echo "%%a","%%b","%%c","!state!","!pid!",%%i,%%k,%%l                                )                              )                              endlocal