一、啟動腳本編寫
#!/bin/bash
#name:******service.sh;
java執行shell、#date:2020-12-02;
#此處修改腳本名稱:
APP_NAME=jar包名.jar
#腳本菜單項
linux jar包怎么運行?usage() {
#提示信息
echo "Usage: sh 腳本名稱.sh [start|stop|restart|status]"
exit 1
xshell6,}
#檢查程序是否在運行
is_exist(){
pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`
xshell6連接linux。#如果不存在返回1,存在返回0
if [ -z "${pid}" ]; then
return 1
else
linux指定jdk運行jar。return 0
fi
}
#啟動方法
linux。start(){
is_exist
if [ $? -eq 0 ]; then
echo "Service ${JAR_NAME} is already running,it's pid = ${pid}. "
linux xshell,else
nohup Java -jar jar包名稱 nohup.out &
fi
}
xshell連接linux命令?#停止腳本
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 文件前提醒用戶
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态