栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Linux下自动关闭再重启服务脚本

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux下自动关闭再重启服务脚本

#!/bin/sh
. /etc/profile
# 根据jps-v命令和关键字查询到具体的应用,通过awk命令只显示第一列
pid=`ps -ef | grep /data/apache-tomcat-9.0.59 | grep -v grep | awk '{print $2}'`
#输出一下找到的pid
echo "/data/apache-tomcat-9.0.59 pid is $pid"
echo "tomcat kill"
#直接kill -9干掉,这里其实有优化的空间。一方面可以判断一下pid是否存在,另一方可以用kill慢慢关
kill -9 $pid
#默认不加单位为秒,加单位按单位,s秒,m分,h时,d天,usleep后面可跟毫秒不用加单位,如下1m表示1分钟后执行之后的命令,如果要立即启动,最好也加上sleep 1 否则可能没关完包端口冲突。
sleep 1m
echo "tomcat kill success!"

echo "begin start..."
# 执行启动脚本
sh /data/apache-tomcat-9.0.59/bin/startup.sh

echo "tomcat start success!"

有了重启的脚本,需要用到Linux的自动任务命令,一般都有安装crontab,

在服务器上添加定时任务:

vi /etc/crontab

使用上述命令打开定时任务配置,如下:

根据注释在最后一行写上要几点执行,如凌晨一点以root用户执行,执行脚本名称为test.sh:

#每天凌晨1点整执行
0 1 * * * root sh test.sh>>/root/test.log
#每天每3小时执行一次,都在整点执行
0 */3 * * * root sh test.sh>>/root/test.log

>>/root/test.log 表示重定向启动日志保存在 /root/test.log中,方便排查。

如下图是美5分钟以root用户执行一次autotask.sh脚本 :

 

定时任务启动停止执行:

#Centos6中用以下命令:
#启动
service crond start

#停止:
service crond stop

#查看状态:
service crond status


#Centos7下用以下命令:
#启动
/bin/systemctl start crond.service

#停止
/bin/systemctl stop crond.service

#查看状态
/bin/systemctl status crond.service
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1027507.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号