win .bat文件自动部署war包到tomcat脚本v1.0

@echo off
setlocal enabledelayedexpansion
:: war包自动升级bat
:: 步骤
:: 1. 获取tomcat根目录,遍历项目名称
:: 2. 选择待升级的项目名称 序号
:: 3. 升级包路径
:: 4. 确认是否关闭tomcat y n
:: 5. 关闭tomcat
:: 6. 备份
:: 7. copy升级包到tomcat目录下并解压缩
:: 8. 是否替换配置文件 y n
:: 9. 启动tomcat
:: 10. 打印升级log
:: 11. 结束

:: 变量初始化
set webapps_dir_name=webapps
set project_name=ROOT
set tomcat_project_upd_backup=tomcat_project_upd_backup
set cd_dir=!cd!
set now_date=!date:~,4!!date:~5,2!!date:~8,2!

echo input example: D:\...\tomcat-7.0.69
set tmocat_root_dir_input=
set /p tmocat_root_dir_input=请输入tomcat根目录:
:: echo 您输入的tomcat根目录是:!tmocat_root_dir_input!
set webapps_dir_name=!tmocat_root_dir_input!\!webapps_dir_name!
for /d %%i in (!webapps_dir_name!\*) do (
	set /a cnt+=1
	set fn=000!cnt!
::	echo %%i
	echo !fn:~-2! "%%i"
)

set backup_num=
set /p backup_num=请选择待升级的项目序号:
:: echo 您选择待升级的项目序号是:!backup_num!

for /d %%i in (!webapps_dir_name!\*) do (
	set /a cnt1+=1
	set fn1=000!cnt1!
	if !fn1:~-2!==!backup_num! (set backup_path=%%i)
)

echo input example: D:\...\web-gzzy-1.4.4.war
set war_upd_package_path=
set /p war_upd_package_path=请输入升级包所在路径:
:: echo 您输入的升级包路径是: !war_upd_package_path!

:: echo 备份路径为: !backup_path!

for %%i in ("!backup_path:\=","!") do set "project_name=%%~i"
:: echo 备份项目为: !project_name!

cd /d !tmocat_root_dir_input!\bin
set tomcat_close_flag=
set /p tomcat_close_flag=是否关闭tomcat (y or n):
if !tomcat_close_flag!==y (
	echo 正在关闭tomcat...
	call shutdown.bat >nul
	if errorlevel 0 (
		echo tomcat已关闭。
	) else (
		echo tomcat关闭失败了!
		pause
		exit
	)
	pause
) else (
	echo 退出程序
	pause
	exit
)

cd /d !cd_dir!
echo 建立备份目录!tomcat_project_upd_backup!
set tomcat_project_upd_backup=!tomcat_project_upd_backup!\!now_date!\!project_name!
md !tomcat_project_upd_backup!
if errorlevel 0 (
	echo 备份目录创建完成。
) else (
	echo 备份目录创建失败了!
	pause
	exit
)

echo 开始备份程序包, 请稍等...
xcopy !backup_path! !tomcat_project_upd_backup!\ /e /y >nul
if errorlevel 0 (
	echo 备份完成。
) else (
	echo 备份失败了!
	pause
	exit
)

set old_application_properties_path=!cd_dir!\!tomcat_project_upd_backup!\WEB-INF\classes\properties\application.properties
::	echo 获取备份后项目配置文件路径!old_application_properties_path!

set new_application_properties_path=!backup_path!\WEB-INF\classes\properties\application.properties
::	echo 获取备份前项目配置文件路径!new_application_properties_path!

echo 开始删除原程序包, 请稍等...
del /f /s /q "!backup_path!\*.*" >nul
rd /q /s "!backup_path!/" >nul
md "!backup_path!" >nul
if errorlevel 0 (
	echo 删除完成。
) else (
	echo 删除失败了!
	pause
	exit
)

cd /d !backup_path!
echo 开始解压升级包, 请稍等...
jar xvf !war_upd_package_path! >nul
if errorlevel 0 (
	echo 解压完成。
) else (
	echo 解压失败了!
	pause
	exit
)

set upd_config_fie_flag=
set /p upd_config_fie_flag=是否替换配置文件 (y or n):
if !upd_config_fie_flag!==y (
	xcopy !old_application_properties_path! !new_application_properties_path! /e /y >nul
	if errorlevel 0 (
		echo 配置文件替换成功。
	) else (
		echo 配置文件替换失败!
		pause
		exit
	)
)

cd /d !tmocat_root_dir_input!\bin
set tomcat_start_flag=
set /p tomcat_start_flag=是否启动tomcat (y or n):
if !tomcat_start_flag!==y (
	echo tomcat正在启动...
	call startup.bat >nul
	if errorlevel 0 (
		echo tomcat已启动。
	) else (
		echo tomcat启动失败了!
		pause
		exit
	)
)
pause

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值