@echo off
rem 提供Windows下nginx的啟動,重啟,關閉功能echo ==================begin========================cls
::ngxin 所在的盤符
set NGINX_PATH=G:::nginx 所在目錄
set NGINX_DIR=G:\projects\nginx-1.24.0\
color 0a
TITLE Nginx 管理程序增強版CLSecho.
echo. ** Nginx 管理程序 ***
echo. *** create 2023-12-10 ***
echo.:MENUecho. ***** nginx 進程list ******
::tasklist|findstr /i "nginx.exe"
tasklist /fi "imagename eq nginx.exe"echo.if ERRORLEVEL 1 (echo nginx.exe不存在) else (echo nginx.exe存在)echo.
::*************************************************************************************************************
echo.echo. [1] 啟動Nginx echo. [2] 關閉Nginx echo. [3] 重啟Nginxecho. [4] 刷新控制臺 echo. [5] 重新加載Nginx配置文件echo. [6] 檢查測試nginx配置文件echo. [7] 查看nginx versionecho. [0] 退 出
echo.echo.請輸入選擇的序號:
set /p ID=IF "%id%"=="1" GOTO startIF "%id%"=="2" GOTO stopIF "%id%"=="3" GOTO restartIF "%id%"=="4" GOTO MENUIF "%id%"=="5" GOTO reloadConfIF "%id%"=="6" GOTO checkConfIF "%id%"=="7" GOTO showVersionIF "%id%"=="0" EXIT
PAUSE::*************************************************************************************************************
::啟動
:startcall :startNginxGOTO MENU::停止
:stopcall :shutdownNginxGOTO MENU::重啟
:restartcall :shutdownNginxcall :startNginxGOTO MENU::檢查測試配置文件
:checkConfcall :checkConfNginxGOTO MENU::重新加載Nginx配置文件
:reloadConfcall :checkConfNginxcall :reloadConfNginxGOTO MENU::顯示nginx版本
:showVersioncall :showVersionNginxGOTO MENU ::*************************************************************************************
::底層
::*************************************************************************************
:shutdownNginxecho.echo.關閉Nginx......taskkill /F /IM nginx.exe > nulecho.OK,關閉所有nginx 進程goto :eof:startNginxecho.echo.啟動Nginx......IF NOT EXIST "%NGINX_DIR%nginx.exe" (echo "%NGINX_DIR%nginx.exe"不存在goto :eof)%NGINX_PATH%cd "%NGINX_DIR%"IF EXIST "%NGINX_DIR%nginx.exe" (echo "start '' nginx.exe"start "" nginx.exe)echo.OKgoto :eof:checkConfNginxecho.echo.檢查測試 nginx 配置文件......IF NOT EXIST "%NGINX_DIR%nginx.exe" (echo "%NGINX_DIR%nginx.exe"不存在goto :eof)%NGINX_PATH%cd "%NGINX_DIR%"nginx -t -c conf/nginx.confgoto :eof::重新加載 nginx 配置文件
:reloadConfNginxecho.echo.重新加載 nginx 配置文件......IF NOT EXIST "%NGINX_DIR%nginx.exe" (echo "%NGINX_DIR%nginx.exe"不存在goto :eof)%NGINX_PATH%cd "%NGINX_DIR%"nginx -s reloadgoto :eof::顯示nginx版本
:showVersionNginxecho.%NGINX_PATH%cd "%NGINX_DIR%"nginx -Vgoto :eof``
解決亂碼:更改bat的編碼方式為ANSI即可解決;
運行效果: