我正在调用一个调用另一个“jar”的批处理,它将消息发送到服务器并最终编写报告,执行的时间每天都不同,批处理中使用的输入大小会影响到。
我想监视批处理自动关闭的时间,这样我就可以让原来的jar读取日志......
我这样称呼它
Process prog = Runtime.getRuntime().exec("cmd /c start C:\\chamados\\corretorRota\\VerificarNumero.bat");
和批次:
cd C:\chamados\corretorRota
java -jar BatchDispatcher.jar brux0043 5873 gcpn-rota.txt > resultado.txt
exit
(仅供参考brux0043 =服务器,5873 =端口gcpn-rota =之前输入的文件) (批处理保持打开,使用被叫jar的结尾)
答案 0 :(得分:1)
只要执行批处理文件,就可以编写带有时间戳的日志。
将此行放入批处理文件
echo. |time |find "current" >> log
这将在批处理文件运行到日志时写入时间戳。此外,在执行批处理文件之前应该有一个名为log的文件。
现在,您的java程序可以监视日志,并知道批处理文件的执行次数和次数。
答案 1 :(得分:1)
你应该使用
prog.waitFor()
等待进程完成执行。