我想用JAVA运行批处理文件。
我想将批处理命令的输出记录到文件中,并隐藏cmd控制台。
批处理文件工作正常,但使用Java时,它既没有正确记录也没有隐藏控制台。
批处理文件“Ftp.bat”内容:
ftp -s:FtpCommands.txt >> Output.log
exit
提前致谢。
答案 0 :(得分:0)
查看ProcessBuilder api,
ProcessBuilder pb = new ProcessBuilder("batchfile.bat", "arg1", "arg2");
Process p = pb.start();
...
p.destroy();
不要忘记捕获任何异常,并在捕获时运行p.destroy()
请参阅this有关如何收听批处理文件输出的问题
答案 1 :(得分:0)
首先确保你有VBScript,然后试试这个:
launch.bat
CD /D %~dp0
wscript.exe "%CD%\invisible.vbs" "%CD%\process.bat"
invisible.vbs
CreateObject("Wscript.Shell").Run """" & WScript.Arguments(0) & """", 0, False
process.bat
[whatever you want to do] [perimeters] >> output.log >2>&1
这将无形地启动它并记录它和任何错误