我是这一切的新手所以请放轻松。 :) 尝试创建PortQry脚本,从文件中检查要打开或关闭的特定TCP端口的多个远程IP地址。 从那个窗口服务器不允许运行任何第三方工具(无MS),所以只有选项是使用某种批处理脚本。
背景 我们有运行多个移动运营商SIM卡的设备。所有IP SIM卡地址均为内部(10. *),设备使用特定端口。 当设备不工作时,不仅要检查ping,还要检查端口是否正常工作,将无法与它们建立连接。 所以这个脚本不打算用于监控,而是用于纯诊断。
在将要执行脚本的同一文件夹中包含以下文件:
预期结果
在窗口上应显示如下格式的结果:IP,端口,监听 (打开)或不听(关闭);
打开端口的IP地址应保存在“alive.txt”中 每个IP都在新行中;
端口关闭的IP地址应保存在“dead.txt”中 每个IP都在新行中;
现在结果
所有IP地址都保存到“dead.txt”
对每个显示
的Ip重复打开窗口查询目标系统: ip.txt 试图立即解析为IP地址
bat文件中的代码:
@echo off
set file=portqry.exe
set iplist=ip.txt
:readfile
for /f "tokens=1-2 delims=:" %%V in (%iplist%) do call :chkport %%V
goto end
:chkport
set ip=%1
portqry -n %ip% -e 5432 -p TCP
if %ERRORLEVEL%==0 echo %IP% >>alive.txt
if NOT %ERRORLEVEL%==0 echo %IP% >>dead.txt
set ip=
goto end
:end