我需要从java代码打开命令提示符并在其上运行一些命令,之后我需要实时读取java代码中的命令提示符输出。
我尝试使用下面的代码但是我无法在java中读取cmd提示符显示/输出。
File file = new File("D://Projects/quantum");
Process proc = rt.exec("cmd.exe /c start cmd.exe /k \"ping localhost\"", null, file);
try {
BufferedReader br = new BufferedReader(new InputStreamReader(proc.getInputStream()));
StringBuffer buffer = new StringBuffer();
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
} catch (IOException ioe) {
ioe.printStackTrace();
}
答案 0 :(得分:3)
检查this out
Process p=Runtime.getRuntime().exec("cmd /c dir");
p.waitFor();
BufferedReader reader=new BufferedReader(new InputStreamReader(p.getInputStream()));
String line=reader.readLine();
答案 1 :(得分:2)
这是运行Process
的非常脆弱的实现。
Runtime.exec()
方法并使用Process
建立ProcessBuilder
这一事实,这样可以更轻松地实施某些建议第一篇链接文章。String
命令分解为String[]
命令参数。