Linux中,shell脚本调用java程序模板

来源:互联网 发布:老人视频聊天软件 编辑:程序博客网 时间:2024/06/10 15:22
运行某个shell的时候检测这个shell当前是否运行,如果正在运行,退出,否则,开始运行。
#!/bin/bash
cd /a/b/c/bin
Channel=$1
BatchSize=80000
export HOMEDIR=/a/b/c
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$HOMEDIR/lib/mysql.jar
export JAVA_HOME=/usr/lib/jvm/java-1.6.0
export JAVA_CMD=$JAVA_HOME/bin/java
export LOGDIR=/a/b/logs/
export LOGFILE=$LOGDIR/Process-`date +"%Y%m%d"`.log
mkdir -p $LOGDIR
export JAVA_MAIN=com.test.Test
EXEC_CMD="$JAVA_CMD -Xmx6000m -classpath $CLASSPATH $JAVA_MAIN $Channel"
ps -ef | grep "$EXEC_CMD" > Status_$Channel
num=$(wc -l Status_$Channel | awk '{print $1}')

if [ $num -gt 1 ]
then
        echo "process is running..." >> $LOGFILE
        exit 1
else
        echo "Start to process For "$Channel" at:"`date +%Y-%m-%d-%H:%M:%S` >> $LOGFILE 
        $EXEC_CMD $BatchSize >> $LOGFILE 
        echo "End to process For "$Channel" at:"`date +%Y-%m-%d-%H:%M:%S` >> $LOGFILE
fi

note:jar包的main函数可以接受两个参数,一个是Channel,另一个是BatchSize.
0 0
原创粉丝点击