使用bat批处理判断端口是否开启

新建一个批处理,键入以下命令,然后根据自己的需求来修改

解释:目前该命令用于一键启动公司的OA服务,因为OA主服务启动后才可以启动移动端服务,而自带的S1服务工具是否不够方便,所以编写了此命令。

@echo off
title 一键启动OA服务
start oa
:again
for /f %%i in ('curl -m 1 -so /dev/null -w %%{http_code} http://127.0.0.1:80') do (
    set ret=%%i
)
if %ret% equ 302 (goto ok) else (goto err)
:err
    echo %ret% 服务尚未启动 %Date:~0,4%-%Date:~5,2%-%Date:~8,2% %Time:~0,2%:%Time:~3,2%:%Time:~6,2%
    ping -n 3 127.0.0.1 >nul
    goto again
:ok
    echo %ret% 服务已启动
    start m3
    pause

备注:

  1. 使用302做端口判断是因为OA登陆页面包含302重定向,正常使用200做判断即可;
  2. 需要下载curl工具并设置好环境变量,或放在当前bat目录。
浮云 avatar
浮云
江天一色无纤尘,皎皎空中孤月轮。