实用教程 |开机自启 | WinSW
标签:服务项自启、shell命令启动
在windwos系统中,有时候需要 nginx的开机自启动,或者java的jar开机自启动,或者内网穿透工具(frp)的开机自启动,使用winsw将shell命令包成服务并设置开机自启动。
Windows Service Wrapper是一个可执行二进制文件,可用于包装和管理作为Windows服务的自定义进程,下载安装包后,您可以将 WinSW.exe 重命名为任何名称,例如 MyService.exe 。接下来您可以创建Myservice.xml文件进行服务配置。最后 MyService.exe install安装到服务即可。
WinSW开源和下载地址(最新版WinSW v2.12.0)
地址:https://github.com/winsw/winsw/releases/tag/v2.11.0
我的电脑是win10的64位系统,因此下载对应的版本,WinSW需要win10系统.NET Framework支持的,在老系统中,可能需要弄兼容。
1.windows10系统配置nginx开机启动
Nginx-WinSW-x64.xml和Nginx-WinSW-x64.exe名称必须保持一致,使用的相对路径
Nginx-WinSW-x64.xml文件内容
nginx-winsw-install.bat
@echo offNginx-WinSW-x64.exe installexit
nginx-winsw-start.bat
@echo offNginx-WinSW-x64.exe startexit
nginx-winsw-stop.bat
@echo offNginx-WinSW-x64.exe stopexit
nginx-winsw-uninstall.bat
@echo offNginx-WinSW-x64.exe uninstallexit
首先运行nginx-winsw-install.bat 这样便能达到开机启动的作用,
如果马上要启动,那么在注册运行之后运行nginx-winsw-start.bat
停止和注销注册也有,注销之后开机启动就不起作用了
2.window10配置java开机启动(系统需要有java环境)
Boot-WinSW-x64.xml
boot-black-0.0.1-SNAPSHOT.jar
boot-black-install.bat
@echo offBoot-WinSW-x64.exe installexit
boot-black-uninstall.bat
@echo offBoot-WinSW-x64.exe uninstallexit
可以参照对比写出相应的bat操作文件
@echo offBoot-WinSW-x64.exe startexit@echo offBoot-WinSW-x64.exe stopexit
3.window10配置frp开机启动
下载后将winsw.exe(WinSW-x64.exe 重命名后的名称为winsw.exe)放在和frp同级目录
新建xml文件命名为winsw.xml,进行配置,如下:
文件结构如下图所示
运行命令:
# 安装服务
winsw.exe install
# 卸载服务
winsw.exe uninstall
从而实现程序作为开机启动项。