自己写的一个项目自动更新的Linux脚本

本文介绍了一个用于更新部署在Linux服务器上的Web项目的自动化Shell脚本。该脚本能够实现新版本WAR包的备份、替换及Tomcat重启等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

自己写的一个更新web项目的Linux脚本


#!bash

fileurl=$1
file="$fileurl/$2"
oldfilurl=$3
oldfile=$4.war
tomend=$5
tomstart=$6
beifen=$7
rsname=$8
ndirf=$beifen/$(date +%Y_%m_%d_%H:%M:%S)
#验证备份的文件夹是否存在不存在创建


if [ ! -d $beifen ]
then
mkdir $beifen
fi




if [ -d $fileurl ]
then
if [ -f $file ]
then 
#关闭tomcat
bash $tomend 2>> /tmp/update.log
if [ $? -eq 0 ]
then 
if [ -d $oldfilurl ]
then
if [ -f $oldfilurl/$oldfile ]
then

#备份旧的文件

$(mkdir $ndirf)
#$(cd $ndirf)
cp -rf $oldfilurl/$oldfile  $ndirf
echo "备份文件完成路径:$ndirf" >> /tmp/update.log
rm -Rf $4
echo "删除命令的执行结果:$? " >> /tmp/update.log 
#留作删除,防止war和他的解压包不能完全取代
#添加新的文件
cp -rf $file $oldfilurl/$rsname.war
#重启tomcat
bash $tomstart  2>> /tmp/update.log

if [ $? -eq 0 ]
then 
echo "web项目重新发布成功"$(date) >> /tmp/update.log
else
echo "新项目发布失败,请结合打印信息以及/tmp/update.log中的信息进行重新操作" >> /tmp/update.log
fi
else
echo "服务器中没有要备份的文件请注意" >> /tmp/update.log
cp -rf $file $oldfilurl/$rsname.war
                                        #重启tomcat
                                        bash $tomstart  2>> /tmp/update.log


                                        if [ $? -eq 0 ]
                                                then
                                                        echo "web项目重新发布成功" >> /tmp/update.log
                                                else
                                                        echo "新项目发布失败,请结合打印信息以及/tmp/update.log中的信息进行重新操作" >> /tmp/update.log
                                        fi


fi
else
echo "Tomcat 中 webapp路径被删除,请注意$(date)" >> /tmp/update.log
fi
else
echo "Tomcat关闭出错" 2>> /tmp/update.log
fi
else
echo "在$fileurl下新的webwar包不存在" 2>> /tmp/update.log
fi
else
echo "文件夹不存在"
$(mkdir $fileurl)
if [ $? -eq 0 ]
then
echo "changjiancge"
#当文件夹创建成功的时候再次执行这个脚本
#$(bash /root/webshell/web.sh)
else
echo "操作失败,请检查文件:夹路径"
fi
fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值