Linux---增加定时任务

1.首先我们在目标目录下写一个.sh脚本

  touch hello.sh

  vim hello.sh

然后对此脚本进行授权chmod 777 hello.sh

2.编辑hello.sh文件

 

 

#!/bin/bash
pid=$(ps aux|grep java | grep system-course2.2.0.jar | awk '{print $2}')
echo "------------"
count=`ps -ef | grep java | grep system-course2.2.0.jar | grep -v "grep" | wc -l`
echo $count
if [ $count -eq 0 ];then
echo "直接重启成功"
source /etc/profile;nohup java -jar /data/sys/system-course2.2.0.jar>>/data/sys/m`date +%Y-%m-%d`.out 2>&1 &
else
kill -9 $pid
sleep 10
echo "定时重启成功"
source /etc/profile;nohup java -server -Xmx2048m -Xms1536m -Xmn1g -Xss1024k -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC -XX:+UseCMSInitiatingOccupancyOnly -XX:CMSInitiatingOccupancyFraction=70 -XX:+ScavengeBeforeFullGC -XX:+CMSParallelRemarkEnabled -XX:+CMSClassUnloadingEnabled -XX:+ExplicitGCInvokesConcurrent -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationConcurrentTime -XX:+PrintHeapAtGC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/data/sys/logs/heapdump.hprof -XX:-OmitStackTraceInFastThrow -Xloggc:/data/sys/logs/gc.log -Djava.util.Arrays.useLegacyMergeSort=true -jar /data/sys/system-course2.2.0.jar>>/data/sys/s`date +%Y-%m-%d`.out 2>&1 &
fi

3.确定脚本中个文件目录是否存在,需要启动的内容是否有权限,如果没有权限的话先授权

4.设置定时任务

crontab -e

 

 

每1分钟执行一次

* * * * *

每小时的第3和第15分钟执行

3,15 * * * *

每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  *

每周一上午8点到11点的第3和第15分钟执行

3,15 8-11 * * 1

这五个内容分别对应:分、时、日、月、周
 
 
posted @ 2021-07-19 10:31  沫笙*  阅读(655)  评论(0编辑  收藏  举报