Linux 定时重启tomcat及配置定时任务详解
1.首先编写重启tomcat脚本
#!/bin/sh TOMCAT_PATH=tomcat地址路径/bin echo "TOMCAT_PATH is $TOMCAT_PATH" PID=`ps aux | grep tomcat地址路径 | grep java | awk '{print $2}'` if [ -n "$PID" ]; then echo "Will shutdown tomcat: $PID" $TOMCAT_PATH/shutdown.sh -force sleep 5 else echo "No Tomcat Process $PID" fi ps -ef|grep -v grep|grep tomcat地址路径 | grep java |awk '{print "kill -9 "$2}'|sh sleep 1 $TOMCAT_PATH/startup.sh sleep 50 for((i=1;i<5;i++)) do LASTINFO=`tail -n 1 tomcat地址路径/logs/catalina.out |grep 'INFO: Server startup in'` if [ -n "$LASTINFO" ]; then break else ps -ef|grep -v grep|grep tomcat地址路径 | grep java |awk '{print "kill -9 "$2}'|sh sleep 1 $TOMCAT_PATH/startup.sh sleep 50 fi done
2.给文件赋权限
chmod 777 restart_tomcat.sh(文件名 -- 我这里命名为restart_tomcat.sh)
3.window系统下直接创建的,需要修改文件的格式
vi restart_tomcat.sh 利用如下命令查看文件格式 :set ff 或 :set fileformat 可以看到如下信息 fileformat=dos 或 fileformat=unix 利用如下命令修改文件格式 :set ff=unix 或 :set fileformat=unix 保存退出 :wq
4.手动测试文件是否可以执行 ./restart_tomcat.sh
ps:如提示-bash: ./restart_tomcat.sh: /bin/sh^M: bad interpreter: No such file or directory 错误, 请仔细查看文件格式 是否已修改成功!
5.添加Crontab任务计划 crontab -e
crontab文件中的行由6个字段组成,不同字段间用空格或者tab键分割。前5个字段指定命令要运行的时间 分钟(0-59) 小时(0-28) 日期(1-31) 月份(1-12) 星期几(0-6,其中0代表星期日) 第六个字段是一个要在适当时间执行的字符串
例子:
#每天早上6点10分 10 6 * * * 脚本路径 + 脚本全名
ps:“crontab: installing new crontab”表示成功。如果出现错误,仔细查找crontab格式是否正确!
6.查看任务是否设置成功
crontab -l # 表示列出所有的定时任务 crontab -r # 表示删除用户的定时任务,当执行此命令后,所有用户下面的定时任务会被删除,执行crontab -l后会提示用户:“no crontab for admin”