千家信息网

Windows中怎么使用bat脚本判断端口是否可用

发表于:2024-11-25 作者:千家信息网编辑
千家信息网最后更新 2024年11月25日,Windows中怎么使用bat脚本判断端口是否可用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。环境:一台服务器上用了portmap
千家信息网最后更新 2024年11月25日Windows中怎么使用bat脚本判断端口是否可用

Windows中怎么使用bat脚本判断端口是否可用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

环境:

一台服务器上用了portmap做了端口转发,但是这个程序经常会跪,需要人工去重启

解决思路:

通过bat来监控程序端口,不通时候自动重启,如果端口可用,则会出来telnet进程,若端口不可用,则不会出现telnet进程。根据进程是否存在来判断端口是否可用,因为telnet通的话,会直接跳转窗口,无回显,所以需要telnet时候启用新窗口。

方法二

@echo offtitle PortMap存活监控!!!:againset ip=127.0.0.1set port=8080start telnet.exe %ip% %port%ping -7 127.0.0.1 > nulltasklist|findstr /i "telnet.exe" > nulif ERRORLEVEL 1 (goto err) else (goto ok):errtasklist|findstr -i "portmap.exe"if ERRORLEVEL 1 (start "" "D:\PortMap1.6\PortMap.exe") else (taskkill /F -IM PortMap.exe & start "" "D:\PortMap1.6\PortMap.exe"):oktaskkill /F -IM "telnet.exe" >> nulecho PortMap Services is running %Date:~0,4%-%Date:~5,2%-%Date:~8,2% %Time:~0,2%:%Time:~3,2%ping -n 300 127.0.0.1 >nulgoto again

方法二

@echo offtitle PortMap存活监控!!!:againset ip=127.0.0.1set port=8080netstat -ano|findstr %ip%:%port%|findstr -i ESTABLISHEDif ERRORLEVEL 1 (goto err) else (goto ok):errtasklist|findstr -i "portmap.exe"if ERRORLEVEL 1 (start "" "D:\PortMap1.6\PortMap.exe") else (taskkill /F -IM PortMap.exe & start "" "D:\PortMap1.6\PortMap.exe"):okecho PortMap Services is running %Date:~0,4%-%Date:~5,2%-%Date:~8,2% %Time:~0,2%:%Time:~3,2%ping -n 300 127.0.0.1 >nulgoto again

关于Windows中怎么使用bat脚本判断端口是否可用问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。

0