Linux当中自定义tomcat重启命令

前言

下图是 tomcat所在服务器上的路径位置
在这里插入图片描述

# 切换用户为admin
su - admin

我用的是普通用户admin,用户组也是admin。
因为下面都是基于用户admin做的操作,所以最好读者也创建一个用户admin来操作。

1 创建脚本文件

1.1 ombashrc

# 创建文件ombashrc
vi /home/admin/ombashrc

# 在ombashrc中写入下面内容
alias restart-om='$HOME/tomcat/bin/restart-om.sh'

1.2 restart-om.sh

# 创建文件ombashrc
vi /home/admin/tomcat/bin/restart-om.sh

# 在restart-om.sh中写入下面内容
#!/bin/sh

PID=`ps aux | grep org.apache.catalina.startup.Bootstrap | grep $HOME/tomcat | awk '{print $2}'`

if [ -n "$PID" ]; then
	    echo "Will stop server : $PID"
        kill -9 $PID
        echo "Server stopped : $PID"
else echo "No server process found, will start soon"
fi

if [ -f "~/tomcat/logs/catalina.out" ]; then
    cp -f ~/tomcat/logs/catalina.out ~/tomcat/logs/catalina.`date "+%Y_%m_%d_%H_%M"`.out
fi

if [ -f "~/tomcat/logs/gc.log" ]; then
    cp -f ~/tomcat/logs/gc.log ~/tomcat/logs/gc.`date "+%Y-%m-%d_%H_%M"`.log
fi

sleep 5
source $HOME/ombashrc
sh "$HOME/tomcat/bin/startup.sh"
sleep 5

PID1=`ps aux | grep org.apache.catalina.startup.Bootstrap | grep $HOME/tomcat | awk '{print $2}'`
if [ -n "$PID1" ]; then
        echo "Restart server successfully"
else
        echo "Failed to startup server"
        exit 1
fi

# 赋予文件restart-om.sh可执行权限
chmod +x restart-om.sh

下图简单介绍一下脚本内容。

在这里插入图片描述

Linux下 ~ 和 $HOME 的意义
1、在root用户下,~ 和 $HOME 等同于/root
2、在普通用户下,~ 和 $HOME  等同于/home/当前的普通用户名

在这里插入图片描述
在这里插入图片描述

补充:

# 如果你当前登录的用户不是admin的话,需要执行下面两行命令。否则启动脚本的时候会出现权限不够的问题。
# 变更 ombashrc 文件用户和用户组为admin
chown admin:admin /home/admin/ombashrc 

# 变更 ombashrc 文件用户和用户组为admin (如果你当前登录的用户不是admin的话,需要这样操作。)
chown admin:admin /home/admin/tomcat/bin/restart-om.sh

2 执行脚本文件

cd /home/admin
source ombashrc
restart-om

在这里插入图片描述

posted @ 2023-01-16 15:31  云村的王子  阅读(37)  评论(0编辑  收藏  举报  来源