描述
有时候需要使用java代码执行多个或者单个cmd命令。这里记录一下操作方法。
实现
Runtime.getRuntime().exec("cmd /k start ipconfig");
执行单条命令可用上述代码,如果是多条,网上说可以用&&符号将命令进行连接,但是我试过了,在我的电脑上是不行。所以如果要执行多条命令,就将要执行的命令写成.bat文件,这里要注意.bat的语法。然后用cmd命令执行bat文件。
例:
RuntimeUtil.exec("cmd /c start C:\\Users\\Administrator\\Desktop\\123.bat");
执行完命令,不关闭cmd窗口,可参考下面的写法。(网上找的),但是我试过了,执行ipconfig 还是会关闭窗口。
cmd.exe /c “命令” 是执行完cmd命令后关闭命令窗口;
cmd.exe /k “命令” 是执行完cmd命令后不关闭命令窗口;
cmd.exe /c start “命令” 会打开一个新窗口后执行cmd指令,原窗口会关闭;
cmd.exe /k start “命令” 会打开一个新窗口后执行cmd指令,原窗口不会关闭;
cmd.exe /k start /b “命令” 会打开一个隐藏的窗口执行cmd指令,原窗口不会关闭