windows批处理实现自动更新部署Web项目

吃可爱长大的小学妹 提交于 2019-12-03 03:10:37

根据windows守护tomcat的bat批处理脚本增强功能
原理:发现webapps目录下有新的ROOT.war包进行解压替换,重启tomcat

@echo off
setlocal enabledelayedexpansion
set TOMCAT_HOME=C:\utils\apache-tomcat-7.0.65
set TOMCAT_PORT=8080
:RESTART
cd %TOMCAT_HOME%\webapps
if exist ROOT.war (
  move /y ROOT.war ROOT
  cd ROOT
  start /wait "" "C:\Program Files\WinRAR\WinRAR.exe" x -y ROOT.war
  for /f "delims=  tokens=1" %%i in ('netstat -aon ^| findstr "%TOMCAT_PORT%"') do (
    set a=%%i
    taskkill /pid "!a:~71,5!"
  )
)
cd /d %~dp0
netstat -an | find /C "0.0.0.0:%TOMCAT_PORT%" > temp.txt
set /p num=<temp.txt
del /F temp.txt

if %num%==0 (
  start /D "%TOMCAT_HOME%\bin\" startup.bat
)

cd /d %~dp0
echo Wscript.Sleep WScript.Arguments(0) >sleep.vbs
cscript //b //nologo sleep.vbs 5000
goto RESTART
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!