1.新建文本,输入以下代码,并把文本的后缀改为.bat:
@echo off
:start
setlocal enabledelayedexpansion
cls
echo 注意:需以管理员身份运行本脚本!
echo -------------------------------------------
set /pinput=请输入要放行的端口(支持逗号分隔或范围,如80,443,5000-5100):
echo 正在处理端口:%input%...
rem 拆分逗号分隔的端口
for %%a in (%input%) do (
rem 处理端口范围(如5000-5100)
echo %%a | find "-" >nul
if !errorlevel! equ 0 (
for /f "tokens=1,2 delims=-" %%b in ("%%a") do (
for /l %%i in (%%b,1,%%c) do (
netsh advfirewall firewall add rule name="Port_%%i" dir=inaction=allow protocol=TCP localport=%%i >nul
if !errorlevel! equ 0 (
echo [成功] 端口 %%i 已放行:ml-citation{ref="1,5"data="citationList"}
) else (
echo [失败] 端口 %%i放行失败(请检查权限或端口格式):ml-citation{ref="6"data="citationList"}
)
)
)
) else (
rem 处理单个端口
netsh advfirewall firewall add rule name="Port_%%a" dir=inaction=allow protocol=TCP localport=%%a >nul
if !errorlevel! equ 0 (
echo [成功] 端口 %%a 已放行:ml-citation{ref="1,5"data="citationList"}
) else (
echo [失败] 端口 %%a放行失败(请检查权限或端口格式):ml-citation{ref="6"data="citationList"}
)
)
)
echo -------------------------------------------
echo 操作完成!按任意键继续放行其他端口,或关闭窗口退出...
pause >nul
goto start
例如:
2.以管理员身份运行脚本,输入需要放行的端口,例如:
即可放行端口。