当前位置:首页 > 其他 > 正文内容

windows下实现统计某个端口的连接数命令及统计端口段连接数脚本

23vps1年前 (2023-10-06)其他499

windows下实现统计某个端口的连接数命令:

netstat -an|find "127.0.0.1:218" |find "ESTABLISHED" /c

阿里云限量代金券 | 此广告位出租25元/月

备注:

1、find命令搜索的字符串要用双引号括起

2、ESTABLISHED是已经建立起的连接,过滤了关闭的,等待的状态的

3、127.0.0.1是本地网卡IP的意思,218是你要统计的端口,根据实际情况修改

脚本1、统计某个端口的连接数脚本:

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off

:input_port
cls
set /p "port=请输入要检测的端口 (格式:端口号): "

:: 检测指定端口的连接数
set "ip_address=127.0.0.1"
set "target=%ip_address%:%port%"
set "connection_count=0"

for /f %%i in ('netstat -an ^| find /c "%target%"') do set "connection_count=%%i"

echo 端口 %port% 的连接数为: %connection_count%

:: 等待用户按下回车键继续检测另一个端口或按 'q' 键退出
set /p "choice=按下回车键继续检测另一个端口,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_port
)

脚本2、统计多个端口的连接数脚本:

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off
setlocal enabledelayedexpansion

:input_ports
set "ports="
set /p "ports=请输入要检测的端口列表(用空格分隔):"

if "%ports%"=="" (
    echo 请输入有效的端口列表。
    goto input_ports
)

:count_connections
for %%p in (%ports%) do (
    set /a "count=0"
    for /f %%i in ('netstat -an ^| find "127.0.0.1:%%p" ^| find "ESTABLISHED" /c') do (
        set /a "count+=%%i"
    )
    echo 端口 %%p 的连接数为: !count!
)

:end

:: 等待用户按下回车键以重新执行或按 'q' 键退出
set /p "choice=按下回车键重新执行,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_ports
)

脚本3、统计端口段连接数脚本(此版本即使连接数为0时也显示结果)

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off
setlocal enabledelayedexpansion

:input_ports
set "ports="
set /p "ports=请输入要检测的端口范围 (格式:起始端口-结束端口):"

if "%ports%"=="" (
    echo 请输入有效的端口范围。
    goto input_ports
)

:count_connections
for /f "tokens=1,2 delims=-" %%a in ("%ports%") do (
    set "start_port=%%a"
    set "end_port=%%b"
)

for /l %%p in (!start_port!, 1, !end_port!) do (
    set /a "count=0"
    for /f %%i in ('netstat -an ^| find "127.0.0.1:%%p" ^| find "ESTABLISHED" /c') do (
        set /a "count+=%%i"
    )
    echo 端口 %%p 的连接数为: !count!
)

:end

:: 等待用户按下回车键以重新执行或按 'q' 键退出
set /p "choice=按下回车键重新执行,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_ports
)

脚本4、统计端口段连接数脚本(此版本只会显示有连接数的结果,而忽略没有连接的端口)

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off
setlocal enabledelayedexpansion

:input_ports
set "ports="
set /p "ports=请输入要检测的端口范围 (格式:起始端口-结束端口):"

if "%ports%"=="" (
    echo 请输入有效的端口范围。
    goto input_ports
)

:count_connections
for /f "tokens=1,2 delims=-" %%a in ("%ports%") do (
    set "start_port=%%a"
    set "end_port=%%b"
)

for /l %%p in (!start_port!, 1, !end_port!) do (
    set /a "count=0"
    for /f %%i in ('netstat -an ^| find "127.0.0.1:%%p" ^| find "ESTABLISHED" /c') do (
        set /a "count+=%%i"
    )
    if !count! gtr 0 (
        echo 端口 %%p 的连接数为: !count!
    )
)

:end

:: 等待用户按下回车键以重新执行或按 'q' 键退出
set /p "choice=按下回车键重新执行,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_ports
)

脚本5、从txt文件中读取端口列表统计多个端口的连接数脚本(此版本即使连接数为0时也显示结果):

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off
setlocal enabledelayedexpansion

:input_ports
set "ports="
set /p "ports=请输入要检测的端口列表文件名(例如:port.txt):"

if "%ports%"=="" (
    echo 请输入有效的端口列表文件名。
    goto input_ports
)

if not exist "%ports%" (
    echo 文件 "%ports%" 不存在,请确保文件存在。
    goto input_ports
)

:count_connections
for /f %%p in (%ports%) do (
    set /a "count=0"
    for /f %%i in ('netstat -an ^| find "127.0.0.1:%%p" ^| find "ESTABLISHED" /c') do (
        set /a "count+=%%i"
    )
    echo 端口 %%p 的连接数为: !count!
)

:end

:: 等待用户按下回车键以重新执行或按 'q' 键退出
set /p "choice=按下回车键重新执行,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_ports
)

脚本6、从txt文件中读取端口列表统计多个端口的连接数脚本(此版本只会显示有连接数的结果,而忽略没有连接的端口):

将下面代码用记事本另存为"检查连接数.bat",编码要采用ANSI保存,否则会出现中文乱码

@echo off
setlocal enabledelayedexpansion

:input_ports
set "ports="
set /p "ports=请输入要检测的端口列表文件名(例如:port.txt):"

if "%ports%"=="" (
    echo 请输入有效的端口列表文件名。
    goto input_ports
)

if not exist "%ports%" (
    echo 文件 "%ports%" 不存在,请确保文件存在。
    goto input_ports
)

:count_connections
for /f %%p in (%ports%) do (
    set /a "count=0"
    for /f %%i in ('netstat -an ^| find "127.0.0.1:%%p" ^| find "ESTABLISHED" /c') do (
        set /a "count+=%%i"
    )
    if !count! gtr 0 (
        echo 端口 %%p 的连接数为: !count!
    )
)

:end

:: 等待用户按下回车键以重新执行或按 'q' 键退出
set /p "choice=按下回车键重新执行,按 'q' 键退出: "
if /i "%choice%"=="q" (
    exit /b 0
) else (
    goto input_ports
)

此代码将提示您输入包含端口列表的文件的名称(例如,“port.txt”),然后它将从该文件中读取端口并检查每个端口的连接计数。确保文件“port.txt”存在并包含用空格分隔的端口列表。

txt内容示例:

12000
12001
12087
12061
12055
12093

注意:

如果扫描不出来连接数,就需要将脚本中的127.0.0.1替换成服务器上的IP地址


参考链接:https://blog.csdn.net/GGSDhkn/article/details/126482661

本网站由提供服务

扫描二维码推送至手机访问。

版权声明:本文由主机测评网发布,如需转载请注明出处。

本文链接:https://23vps.com/post/82.html

标签: windows命令
分享给朋友:

“windows下实现统计某个端口的连接数命令及统计端口段连接数脚本” 的相关文章

IP可用性检测工具

IP可用性检测工具

有些时候我们要检测vps的端口可用性,这是一个可以从国内检测也可以从国外检测的端口检测工具这个工具是以网页形式的,网址是:https://www.toolsdaquan.com/ipcheck/ 备用https://www.vps234.com/ipchecker/...

小众技术工具库

小众技术工具库

主机哥今天给大家分享一个非常有用的网站,里面非常好用的网站实在是太多了,废话不多说,贴图上链接!网址:https://www.xiaozhongjishu.com/...

windows vps批量下载测速工具

windows vps批量下载测速工具

主机哥不是有很多服务器么,一般都放在那吃灰,昨天就突发奇想,能不能弄个工具可以给所有服务器测试下下载速度?在loc论坛问了下,没人知道那么只好自己慢慢找了,功夫不负有心人,还是找到了,这是一款Windows版软件:DownTesters。软件名称:DownTesters官方网站:https://ww...

curl和wget忽略证书错误教程

curl和wget是我们常用的Linux下载测试工具如果遇到下载报错可以按下面方法操作如果是curl ssl证书错误其实只要在url地址后面加上 -k,就可以忽略证书校验了(不验证证书)。具体就是这样操作:curl  'https://下载地址' -k如...

MobaXterm配置SSHTunnel

MobaXterm配置SSHTunnel

MobaXterm作为一款良心的SSH工具,它支持SSHTunnel隧道功能,网上的教程讲的并不详细,所以主机哥写个教程:由于主机哥买了台NAT服务器,由于NAT服务器只有SSH端口没有其他公网端口,安装宝塔后要访问8888端口进行面板设置才能用,这时候SSHTunnel就可以用上了点击Tunnel...

网络测压小工具webBenchmark

这是一个HTTP基准测试工具,可以用来耗尽服务器带宽或流量限额。特点:每个请求都有随机的 User-Agent可自定义请求参数中的 Referer并发线程取决于您的服务器性能。项目地址:https://github.com/maintell/webBenchmark/ 起源这个起源于MJJ论坛刷“剑...