现在的位置: 首页 > 综合 > 正文

Resin Windows一键部署应用脚本BAT V1.1

2013年10月10日 ⁄ 综合 ⁄ 共 2116字 ⁄ 字号 评论关闭

V1.1

1、修复windows路径中含有空格时导致文件路径出错的bug,修复代码

SET SRC_FILE="%cd%"\ahswzh.tar.gz

2、修复自动安装服务后,服务没有自启动的问题

echo 正在安装服务 %SERVICE_NAME% .
%RESIN_HOME%/httpd -conf conf/resin.conf -install-as %SERVICE_NAME%
net start %SERVICE_NAME%
goto endcho

=========================================================

新建bat文件,复制下面代码,修改配置后保存。

echo off
Resin 应用一键部署功能!                                                                                                                                           
:start
cls
color 0c
MODE con: COLS=100
echo Resin 应用一键部署功能!
echo Powered By 笑的自然.
echo Date: 2013-01-13
echo. 

SET WINRAR_HOME=C:\Program Files\WinRAR
SET RESIN_HOME=D:\www\resin-8081
SET WEB_ROOT=D:\www\resin-8081\webapps\ROOT
SET SERVICE_NAME=WWW_8081_HBSWFZ
SET SRC_FILE="%cd%"\hbswfz.tar.gz
SET WAIT_SEC=30

SET TEMP_ROOT=%cd%\~~temp_web_root

echo ======================================
echo               部署配置
echo ======================================
echo %SERVICE_NAME% %SERVICE_NAME%
echo WINRAR_HOME %WINRAR_HOME%
echo WEB_ROOT %WEB_ROOT%
echo TEMP_ROOT %TEMP_ROOT%
echo SRC_FILE %SRC_FILE%
echo WAIT_SEC %WAIT_SEC%S
echo .

REM 将引号内部分改成你要查找的服务名称
sc query |find /i "%SERVICE_NAME%" >nul 2>nul
if not errorlevel 1 (goto exist) else goto notexist

:notexist
echo .
echo 不存在服务名为%SERVICE_NAME%的服务,请下载并安装Resin.
echo 下载地址:http://www.caucho.com/download/ .
echo .

:cho
set choice=
set /p choice=您确定已经安装Resin,并要在Windows中安装 %SERVICE_NAME% 服务吗?[Yes or No]:
IF NOT "%Choice%"=="" SET Choice=%Choice:~0,3%
if /i "%choice%"=="yes" goto choyes
if /i "%choice%"=="no" goto chono

:choyes
echo 正在安装服务 %SERVICE_NAME% .
%RESIN_HOME%/httpd -conf conf/resin.conf -install-as %SERVICE_NAME%
net start %SERVICE_NAME%
goto endcho

:chono
echo 您取消了在Windows中安装%SERVICE_NAME%服务.
goto end

echo 选择无效,请重新输入...
goto:cho

:endcho
goto :end

:exist
rem echo 存在服务名为%SERVICE_NAME%的服务.
net stop %SERVICE_NAME%

if exist "%TEMP_ROOT%" RD /S /Q %TEMP_ROOT%
MKDIR %TEMP_ROOT%

echo 正在解压压缩包...
start "" "%WINRAR_HOME%\WinRAR.exe" x -inul %SRC_FILE% %TEMP_ROOT%\

echo 等待%WAIT_SEC%秒,正在释放资源和解压压缩包...
echo Wscript.Sleep Wscript.Arguments(0) * 1000 > Delay.vbs
Delay.vbs %WAIT_SEC%
del Delay.vbs

del /F /S /Q %RESIN_HOME%\log\*.*
del /F /S /Q %RESIN_HOME%\logs\*.log
del /F /S /Q %RESIN_HOME%\session\*.*
del /F /S /Q %RESIN_HOME%\cache\*.*
del /F /S /Q %WEB_ROOT%\WEB-INF\tmp\*.*
del /F /S /Q %WEB_ROOT%\WEB-INF\work\*.*
echo 资源文件释放完成.

echo .
echo 正在复制文件. [%TEMP_ROOT%   ->  %WEB_ROOT%]
xcopy %TEMP_ROOT% %WEB_ROOT% /I /Y /S /Q

RD /S /Q %TEMP_ROOT%

net start %SERVICE_NAME%

:end

echo. & pause

抱歉!评论已关闭.