我试图从java类执行一些批处理文件。我希望批量运行而不打开cmd窗口,我想等到它完成。
使用下面的命令(没有背景) - 它完美地运作:
String executeCmd = "cmd /c start /wait " +config.getJarPath()+ " --context_param Path=" +folderName;
final Process process = run.exec(executeCmd);
process.waitFor();
但是当我添加/ b(在后台运行)时,批处理文件没有运行:
String executeCmd = "cmd /c start /B /wait " +config.getJarPath()+ " --context_param Path=" +folderName;
final Process process = run.exec(executeCmd);
process.waitFor();
你知道它能是什么吗?
非常感谢
答案 0 :(得分:0)
使用start /b
命令标记只需在当前窗口中启动该程序即可。
B Start application without creating a new window.
如果要将批处理文件作为隐藏进程启动,可以使用简单的vb script来执行此操作。
或者您可以使用Batch-To-Exe converter并在转换时指定您希望exe为Ghost应用程序
答案 1 :(得分:0)
使用/B
与/wait
一起使用。
E.g。 cmd /c start /B /wait yourbatfile.bat