import java.io.IOException; public class Main { public static void main(String[] args){ try { Runtime rt = Runtime.getRuntime(); rt.exec("cmd.exe /c start c://1.bat"); } catch (IOException e) { e.printStackTrace(); } } /* 1.bat的内容 * @echo off * echo lsd>>c:/lsd.txt * * */ }
rt.exec("");的运行时异步的,主线程不会等待它结束才运行下面的程序。
所以要想只掉cmd运行的东东是否结束,需要额外加代码,比如运行完后 写入文件,主线程循环抓取这个文件