java的Runtime.getRuntime().exec(commandStr)可以调用执行cmd指令。

cmd /c dir 是执行完dir命令后关闭命令窗口。

cmd /k dir 是执行完dir命令后不关闭命令窗口。

cmd /c start dir 会打开一个新窗口后执行dir指令,原窗口会关闭。

cmd /k start dir 会打开一个新窗口后执行dir指令,原窗口不会关闭

 

 
  
  1. public static void main(String[] args) {     
  2.     String path = "D:\\public.bat";     
  3.     Runtime run = Runtime.getRuntime();     
  4.     try {    
  5.         Process process = run.exec("cmd.exe /k start " + path);     
  6.         InputStream in = process.getInputStream();       
  7.         while (in.read() != -1) {     
  8.             System.out.println(in.read());     
  9.         }     
  10.         in.close();     
  11.         process.waitFor();     
  12.     } catch (Exception e) {              
  13.         e.printStackTrace();     
  14.     }     
  15.