在桌面上新建文本文件,然后将下面的批处理脚本复制,最后重命名后缀改为 .bat 或 .cmd
@echo off
@REM 提供Windows下nginx的启动,重启,关闭功能
chcp 65001
::ngxin 所在的盘符
set NGINX_PATH=D:
::nginx 所在目录
set NGINX_DIR=D:\MyWorks\IdeaProgramFiles\LjdProgramFiles\IfmsWorks\program-deploy\windows\myHome\softs\nginx-1.20.2
color 0a
TITLE nginx-管理程序
echo.
echo. ********************* nginx-管理程序 *********************
echo. ********************* 当前时间:%date% *********************
echo.
:optMenu
cls
echo.
echo. ********************* nginx 进程列表 *********************
setlocal enabledelayedexpansion
for /f "tokens=1" %%i in ('tasklist ^| findstr /i "nginx.exe"') do (
set list=!list! %%i
)
if "%list%" == "" (
echo.nginx-程序未启动
echo.%list%
) else (
echo.nginx-程序进程信息列表
tasklist /fi "imagename eq nginx.exe"
)
echo.
echo.*****************************************************************
echo.*****************************************************************
echo.
echo. [1] 启动
echo. [2] 停止
echo. [3] 重启
echo. [4] 刷新控制台
echo. [5] 重新配置文件
echo. [6] 检测配置文件
echo. [7] 查看版本
echo. [0] 退出
echo.
echo.*****************************************************************
echo.
echo 请输入选择操作的序号:
set /p ID=
IF "%id%"=="1" GOTO:start
IF "%id%"=="2" GOTO:stop
IF "%id%"=="3" GOTO:restart
IF "%id%"=="4" GOTO:optMenu
IF "%id%"=="5" GOTO:reloadConf
IF "%id%"=="6" GOTO:checkConf
IF "%id%"=="7" GOTO:showVersion
IF "%id%"=="0" EXIT
PAUSE
::*************************************************************************************************************
:start - run 启动
call:startNginx
GOTO:optMenu
:stop - 停止
call:shutdownNginx
GOTO:optMenu
:restart - 重启
call:startNginx
call:shutdownNginx
GOTO:optMenu
:checkConf - 检查测试配置文件
call:checkConfNginx
GOTO:optMenu
:reloadConf - 重新加载Nginx配置文件
call:checkConfNginx
call:reloadConfNginx
GOTO:optMenu
:showVersion - 显示nginx版本
call:showVersionNginx
GOTO:optMenu
@REM **********************************************************************************************
:startNginx - 启动 nginx
echo.
IF NOT EXIST "%NGINX_DIR%\nginx.exe" (
echo "%NGINX_DIR%\nginx.exe"不存在
goto :eof
) else (
echo.启动 nginx......
%NGINX_PATH%
cd "%NGINX_DIR%"
IF EXIST "%NGINX_DIR%\nginx.exe" (
echo "start '' nginx.exe"
start "" nginx.exe
)
echo.启动 OK!
)
goto :eof
@REM **********************************************************************************************
@REM **********************************************************************************************
:shutdownNginx - 停止 nginx
echo.
echo.关闭 nginx......
taskkill /F /IM nginx.exe > nul
echo.OK,关闭所有nginx 进程
goto :eof
:checkConfNginx - 检查测试 nginx 配置文件
echo.
echo.检查测试 nginx 配置文件......
IF NOT EXIST "%NGINX_DIR%\nginx.exe" (
echo "%NGINX_DIR%\nginx.exe"不存在
goto :eof
) else (
%NGINX_PATH%
cd "%NGINX_DIR%"
nginx -t -c conf/nginx.conf
)
goto :eof
@REM **********************************************************************************************
@REM **********************************************************************************************
:reloadConfNginx - 重新加载 nginx 配置文件
echo.
echo.重新加载 nginx 配置文件......
IF NOT EXIST "%NGINX_DIR%nginx.exe" (
echo "%NGINX_DIR%nginx.exe"不存在
goto :eof
) else (
%NGINX_PATH%
cd "%NGINX_DIR%"
nginx -s reload
)
goto :eof
@REM **********************************************************************************************
@REM **********************************************************************************************
:showVersionNginx - 显示nginx版本
echo.
%NGINX_PATH%
cd "%NGINX_DIR%"
nginx -V
goto :eof
@REM **********************************************************************************************