免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4503 | 回复: 1
打印 上一主题 下一主题

[故障求助] 紧急求助,使用shell调用java程序如何自动执行需要选项? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-04-07 15:40 |只看该作者 |倒序浏览
各位老大,我现在碰到这么一个情况,我需要每天凌晨3点定时发起批处理程序,所以我用
crontab -e citybank 中编辑了这么一句命令
0 3 * * * sh /home/citybank/cmisbatch/batch.sh>>/home/citybank/cmisbatch/logs/autoBatch.log

另外我得batch.sh 内容如下:
CMISLIB=/home/citybank/cmisbatch/lib

set CMISCLASS=/home/citybank/cmisbatch/

for jarfile in $CMISLIB/*.jar
do
        CMISCLASS=$CMISCLASS":"$jarfile
done
for jarfile in $CMISLIB/*.zip
do
        CMISCLASS=$CMISCLASS":"$jarfile
done

CMISCLASS="/home/citybank/cmisbatch/"$CMISCLASS":"

CUR_DATE=`date "+%Y.%m.%d %H:%M:%S"`
echo "----------------$CUR_DATE  批处理执行开始-----------------"

/usr/IBM/WebSphere/AppServer1/java/bin/java -Dfile.encoding=GBK -classpath $CMIS
CLASS -Xms64M -Xmx512M com.cvicse.cmis.pm.batch.BatchMain<<end
2

end
CUR_DATE=`date "+%Y.%m.%d %H:%M:%S"`
echo "----------------$CUR_DATE  批处理执行结束-----------------"

shell得正常执行情况应该是:

                *********日终批量处理操作开始**********
                ***      0  推出                                   ***
                ***      1  单步执行                      ***
                ***      2  自动执行                        ***
                **************************************
                *** 当前批处理日期     [2006-05-03]     ***
                **************************************
                &iexcl;请选择:0-2&iexcl;

发起shell后我希望自动调起得batch.sh能够自动选择选项2,然后往下继续执行

但是我发现如果用每日3点得定时命令发起得batch.sh时,写在batch.sh 中得输入选项起不到任何作用,就直接推出了

但是如果我手工执行 sh batch.sh 输入选项却又没有问题, shell自动选择选项2,然后往下执行

实在令人费解啊,请各位高手不吝赐教啊!!!

论坛徽章:
0
2 [报告]
发表于 2007-04-07 17:32 |只看该作者
刚才又有一些新发现,发现这样自动执行时 用户得环境变量不会自动加载,所以在shell 中
增加 . /home/citybank/.profile
这样可以调起程序
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP