各位好
我有一个问题,是这样:
环境:有一套管理系统(包括联机和批量),该管理系统白天运行联机系统,晚上运行批量系统。
目的:联机系统运行到晚上,会停掉,这时候通过在unix下的sh脚本调用并且启动批量系统。
请问这个该如何控制实现啊?
sh脚本可以调用java程序,通过java程序就可以启动了批量系统。
我的问题时,这个调用java程序的sh脚本是如何被运行的呢?有什么方法吗?
就是,没到晚上一定时刻,通过什么方法可以自动运行这个sh脚本,然后该脚本调用java程序。
还请各位朋友帮忙解答一下这个问题,谢谢!
可以在脚本中 实现一个定时功能啊
比如每隔半小时 检查一次当前的时间
如果到了晚上 就停止联机系统,运行批量系统
当然前提是 这个sh脚本要一直保持运行状态 并且其错误处理机制要完善
最简单的方法 你可以用java写一个job 然后每天晚上执行sh
可以使用java的Timer和TimerTask来实现
详见[url]http://java.chinaitlab.com/advance/525535.html[/url]
其中调用[code="java"]Runtime.getRuntime().exec(commandText)[/code]来调用具体的脚本
你这个java程序运行后不要关闭就好了 如果你是说job不太清楚的话 可以看看quartz 呵呵
如果直接在sh脚本中的话
使用这种方式啊
while((1))
do
echo ....
sleep 60 * 60 * 0.5
done
呵呵 对的
第一种使用Java的方式其实也是一样的道理 一直有个Java线程在服务端程序中运行
而这种sh的方式 其实是一直有个进行在调用Java命令处理,但是相对服务端程序是独立的