crond 是Linux用来定期执行程序的命令,我们通过crond来定期执行shell脚本重启tomcat。
#编写定时重启shell脚本(pid=`ps aux | grep tomcat | grep -v grep | grep -v retomcat | awk '{print $2}'`)
> vi hello.sh
#echo "hello world"
#!/bin/sh
. /etc/profile
pid=`netstat -anp|grep 9090|awk '{printf $7}'|cut -d/ -f1`
dat=`date '+%Y-%m-%d %H:%M:%S'`
echo $dat
echo $pid
if [ -n "$pid" ]
then
{
echo ===========shutdown================
/usr/local/app/wxp/apache-tomcat-7.0.73/bin/shutdown.sh
sleep 1
pid=`netstat -anp|grep 9090|awk '{printf $7}'|cut -d/ -f1`
if [ -n "$pid" ]
then
{
sleep 1
echo ========kill tomcat==============
kill -9 $pid
}
fi
sleep 1
echo ===========startup.sh==============
/usr/local/app/wxp/apache-tomcat-7.0.73/bin/startup.sh
}
else
echo ===========startup.sh==============
/usr/local/app/wxp/apache-tomcat-7.0.73/bin/startup.sh
fi
~
~
~
~
~
~
#赋予权限,是脚本可执行
chmod +x filename
#设定定时任务
[root@yz-Centos1 bin]# crontab -e
0 6 * * * /usr/local/app/wxp/apache-tomcat-7.0.73/bin/hello.sh >> /usr/local/app/wxp/apache-tomcat-7.0.73/bin/log/log.txt