* * * * * XXX(执行的例程)
分 时 日 月 年 需要执行的命令、脚本、程序等等
crontab只能够精确到分钟。每隔N的写法为:
*/5 * * * * 即:每隔5分钟执行一次。
基本语法很简单。但是需要注意的是:crontab中没有设定环境变量。
比如:我的程序中需要设置环境为:
export LANG=zh_CN.gbk
export LC_ALL=zh_CN.gbk。
本身系统的locale已经为zh_CN.gbk了,但是在执行crontab例程的时候,在需要执行的bash中还要设置一下locale。比如:每隔5分钟执行一次check.sh。
*/5 * * * * check.sh
check.sh的代码为:
echo "monitor the startindex thread running...."
result=`ps ax|grep RunVegaIndex |grep -v grep | cut -f 2 -d ' '`
echo $result
if [ "$result" = "" ]; then
echo "index threading not running..."
echo "restart the index thread..."
. /etc/profile && cd /root/vegaindex && ./startindex.sh 1>&/dev/null &
date > /root/vegaindex/stoptime.txt
else
echo “running…”
fi
如果执行的程序需要设置locale,那么要在check.sh中设置一下,或者执行以下/etc/profile。