2014-11-24 4 views
0

Есть ли способ увидеть открытые порты окна в определенном диапазоне с использованием командной строки?Командная строка Windows open ports

Например, я хочу видеть открытые порты в диапазоне 1-1024.

ответ

3

Это будет список всех открытых (используемых) портов.

netstat -na 

Фильтрация немного сложнее. Этот сценарий принимает два порта в качестве (включительно) диапазона локальных портов для фильтрации.

@ECHO OFF 
SETLOCAL ENABLEDELAYEDEXPANSION 

SET STARTPORT=%1 
SET ENDPORT=%2 

FOR /F "delims=|" %%l IN ('netstat -na') DO (
    FOR /F "tokens=2" %%a IN ("%%l") DO (
     REM IPv6 uses colons, too. 
    SET "LOCAL=%%~a" 
    SET "LOCAL=!LOCAL:*]=0!" 
     FOR /F "delims=: tokens=2" %%p IN ("!LOCAL!") DO (
      IF %%p LEQ %ENDPORT% (IF %%p GEQ %STARTPORT% (@ECHO %%l)) 
     ) 
    ) 
) 
+0

Спасибо. Как я могу использовать этот скрипт? Я сохранил его в виде пакетного файла, но когда я его открываю, ничего не происходит? – HBS

+0

Параметры '% 1' и'% 2' являются параметрами командной строки, а именно номерами нижнего и верхнего портов. – mojo

Смежные вопросы