Linux下启动tomcat的脚本文件

1 创建文件并编辑文件

mkdir tomcat_restart.sh
vim tomcat_restart.sh

2 复制黏贴代码

!/bin/sh
#set -m 设置该脚本文件以作业模式启动
set -m
p='/opt/apache-tomcat-8.5.20' 
#删除缓存文件
work=${p}'/work/'
`rm -rf ${work}`
tomcatpath=${p}'/bin'
echo 'operate restart tomcat: '$tomcatpath
#查询tomcat的进程id 
pid=`ps aux | grep $tomcatpath | grep -v grep | grep -v retomcat | awk '{print $2}'`
echo 'exist pid:'$pid

if [ -n "$pid" ]
then
{
   echo ===========shutdown================
   $tomcatpath'/shutdown.sh'
   sleep 2
   pid=`ps aux | grep $tomcatpath | grep -v grep | grep -v retomcat | awk '{print $2}'`
   if [ -n "$pid" ]
   then
    {
      sleep 2
      echo ========kill tomcat begin==============
      echo $pid
      kill -9 $pid
      echo ========kill tomcat end==============
    }
   fi
   sleep 2
   echo ===========startup.sh==============
   $tomcatpath'/startup.sh'
 }
else
echo ===========startup.sh==============
$tomcatpath'/startup.sh'

fi
#输出日志
tail -f $p'/logs/catalina.out'

注意修改 p tomcat的位置

3 文件授权

chmod 755 tomcat_restart.sh (有必要时在前面加个 sudo)

4 启动脚本

./tomcat_restart.sh (有必要时在前面加个 sudo)

5 注意事项

在脚本文件加了tail -f $p’/logs/catalina.out’ 启动输出日志时,如果没有在脚本文件前面加 “set -m” 表示该脚本以作业模式启动脚本,那么在日志输出的状态下,脚本文件并没有算是执行完全,那么此时如果直接中断ssh连接,则tomcat服务也随之关闭。 而加了 set -m以作业模式启动后,服务器会马上分配一个进程给脚本文件。

猜你喜欢

转载自blog.csdn.net/q410654146/article/details/78553129