如何在Java中执行命令时显示可见的Cmd窗口?
如何让Java调用的Cmd命令显示可见窗口?
可行,你可以通过调整Cmd的命令参数,让系统启动一个可见的控制台窗口来执行你的任务。
原来的代码是在后台静默执行Cmd命令,没有创建独立的可见窗口。只需修改命令数组,添加start指令来触发新窗口的创建:
this.cmds = new String[] { "cmd.exe", "/c", "start", "cmd.exe", "/k", customCmd }; ProcessBuilder pb = new ProcessBuilder(cmds); try { pb.start(); } catch (IOException e) { e.printStackTrace(); }
参数说明:
start:Windows Cmd的内置命令,用于启动新窗口来运行指定程序/命令/k:执行完命令后保持Cmd窗口打开;如果希望任务完成后自动关闭窗口,把/k换成/c即可
如果需要给新窗口设置自定义标题,可以在start后添加标题参数:
this.cmds = new String[] { "cmd.exe", "/c", "start", "title 任务执行窗口", "cmd.exe", "/k", customCmd };
注意:这种方式仅适用于Windows系统,因为start是Windows Cmd的专属命令。如果你的程序需要跨平台运行,建议先通过System.getProperty("os.name")判断当前操作系统,再决定是否使用该逻辑。
内容的提问来源于stack exchange,提问作者Benna
相关产品推荐
相关产品推荐

