jar包在linux定时调度,xshell脚本启动JAR包-定时任务拆分日志

一、启动脚本编写

#!/bin/bash

#name:******service.sh;

#date:2020-12-02;

#此处修改脚本名称:

APP_NAME=jar包名.jar

#脚本菜单项

usage() {

#提示信息

echo "Usage: sh 脚本名称.sh [start|stop|restart|status]"

exit 1

}

#检查程序是否在运行

is_exist(){

pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`

#如果不存在返回1,存在返回0

if [ -z "${pid}" ]; then

return 1

else

return 0

fi

}

#启动方法

start(){

is_exist

if [ $? -eq 0 ]; then

echo "Service ${JAR_NAME} is already running,it's pid = ${pid}. "

else

nohup Java -jar jar包名称 nohup.out &

fi

}

#停止脚本

stop(){

is_exist

if [ $? -eq "0" ]; then

kill -9 $pid

else

echo "${APP_NAME} is not running"

fi

}

#显示当前jar运行状态

status(){

is_exist

if [ $? -eq "0" ]; then

echo "${APP_NAME} is running. Pid is ${pid}"

else

echo "${APP_NAME} is NOT running."

fi

}

#重启脚本

restart(){

stop

start

}

case "$1" in

"start")

start

;;

"stop")

stop

;;

"status")

status

;;

"restart")

restart

;;

*)

usage

;;

esac

二、分割脚本编写

# !/bin/bash

# 1.该shell命令用于按小时拆分nohup.out日志,并按服务名_年月日_时重新命名

# 2.把原有nohup.out文件置空

#path是绝对路径

path=/home/jar/***service

date=nohup_`date '+%Y%m%d_%H'.out`

#日志按小时拆分

#1.复制原有nohup.out并重新命名

#2.${path}是项目绝对路径,vbasic是项目名,nouhuplog是存放日志的目录

cp ${path}/nohup.out ${path}/nohuplog/jg-service_$date

#置空原有nohup.out文件

cp /dev/null ${path}/nohup.out

三、添加定时任务

编辑crontab文件:crontab -e

添加定时任务:

#每天5.30执行splitnohup.sh脚本进行日志拆分

30 5 * * * root  splitnohup.sh

保存完重启crond : service crond restart

-----------------------------------------------------------------------------------------------------------------------------------

做完以上一步就可以实现定时拆分nohup.out日志了!!!以后有升级再来哈哈哈!

注意:在Windows下标记好的脚本需要执行此命令,否则会出现报错“build.sh   /bin/bash^M: 坏的解释器:没有那个文件或目录 ”

sed -i 's/\r$//' build.sh

crontab用法

crontab –e : 修改 crontab 文件,如果文件不存在会自动创建。

crontab –l : 显示 crontab 文件。

crontab -r : 删除 crontab 文件。

crontab -ir : 删除 crontab 文件前提醒用户

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值