I am experimenting with a single line cmd /c to get an inner loop without branching. (Actually i have the showLines routine which performs the loop.) I know its worst for performance but i want to know if its possible to get it run without quotes. Currently it raises "%G was unexpected at this time" error. So, it needs some correct escaping or expansion of variables.
@echo off
setlocal enableDelayedExpansion
set "param=%~1"
netstat -aonb | findstr /n $ > tmpFile_Content
for /F "tokens=*" %%A in ('type tmpFile_Content ^| findstr /r /c:"%param%" /i') do (
  SET line=%%A
  for /F "tokens=1 delims=:" %%I in ("!line!") DO (
      set /a LineNum=%%I
      rem set /a NextLineNum=LineNum+1
  )
  set /a lineNum=!LineNum!-1 
  if !lineNum!==0 ( set param="tokens=*" ) else ( set param="tokens=* skip=!lineNum!" )
  rem FOLLOWING WORKS FINE in quotes
  cmd /q /v:on /c "@echo off && setlocal enableDelayedExpansion && set cnt=2 && for /F %%param%% %%B in (tmpFile_Content) do ( echo %%B && set /a cnt-=1 >nul && if ^!cnt^!==0 exit /b )"
  rem Following does not work even though cmd should take the rest of arguments after /c
  cmd /q /v:on /c setlocal enableDelayedExpansion && FOR /F "tokens=*" %%C IN ('echo !param!') DO ( for /F %%C %%G in (tmpFile_Content) do (  echo %%G && set /a cnt-^=1 >nul && if ^!cnt^!==0 exit /b ))
  rem call :showLines !LineNum!
 )
del tmpFile_Content
goto :eof
:showLines
  set /a lineNum=%1-1
  set cnt=2
  for /F "tokens=* skip=%lineNum%" %%B in (tmpFile_Content) do (
    echo %%B
    set /a cnt-=1
    if !cnt!==0 goto exitLoop
  )
  :exitLoop
  exit /b
 
     
    