windows中nginx.exe注册为系统服务

1、nginx.exe同级目录创建bin文件夹,放入写好的注册为服务脚本。

Installservice.bat、myconf.conf、myIstall.exe、UninstallService.bat

2、修改myconf.conf,进行配置,若为ngnix注册服务则无需调整,若要注册其他服务则需要配置下服务名及exe名称。

3、双击Installservice.bat后,可以将nginx.exe注册为系统服务。

Installservice.bat内容为:

@echo off



setlocal
:: 当前脚本所在目录
set batHome=%~dp0
cd /d %batHome%
cd ../
:: exe所在目录
set exeHome=%CD%



:: 从配置文件读取设置的脚本名称、服务名称、待注册服务的exe
for /f "eol=# tokens=1,2 delims==" %%i in (%batHome%myconf.conf) do (
	if /I "%%i"=="batName" set batName=%%j
	if /I "%%i"=="serviceName" set serviceName=%%j
	if /I "%%i"=="exeName" set exeName=%%j
)



:: 复制myInstall.exe到nginx.exe所在目录
copy %batHome%%batName%.exe %exeHome%\%batName%.exe /Y



rem  自动生成注册服务文件xml 
:: 自动生成与myInstall.exe对应的myInstall.xml
echo ^<service^> > ./%batName%.xml
echo	 ^<id^>%serviceName%^</id^>  >> ./%batName%.xml
echo	 ^<name^>%serviceName%^</name^> >> ./%batName%.xml 
echo	 ^<description^>%serviceName%^</description^> >> ./%batName%.xml
echo	 ^<logpath^>%exeHome%\logs\^</logpath^> >> ./%batName%.xml
echo	 ^<logmode^>roll^</logmode^> >> ./%batName%.xml
echo	 ^<executable^>%exeHome%\%exeName%^</executable^> >> ./%batName%.xml
echo	 ^<stopexecutable^>%exeHome%\%exeName% -s stop^</stopexecutable^> >> ./%batName%.xml
echo ^</service^> >> ./%batName%.xml



:: 注册exe为服务
%batName% install
if not errorlevel 1 goto :eof
endlocal
pause

myconf.conf的内容为:

#需要注册服务使用到脚本的名称,如下myInstall.exe和myInstall.xml中的名称myInstall
batName=myInstall
#需要注册服务的名称,如需要注册nginx服务
serviceName=nginx
#exe名称
exeName=nginx.exe

UninstallService.bat内容为:

@echo off


setlocal
:: 当前脚本所在目录
set batHome=%~dp0


:: 从配置文件读取设置的服务名称
for /f "eol=# tokens=1,2 delims==" %%i in (%batHome%myconf.conf) do (
	if /I "%%i"=="serviceName" set serviceName=%%j
)


::删除系统服务exe
sc delete %serviceName%

endlocal
pause

myIstall.exe为注册服务辅助exe,实际是 使用Windows Service Wrapper工具来注册服务的,这里重命名为了 myInstall.exe

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值