打开cmd提示符并执行命令java
我能够使用以下代码从Java程序打开命令提示符:打开cmd提示符并执行命令java,java,cmd,prompt,Java,Cmd,Prompt,我能够使用以下代码从Java程序打开命令提示符: String cmd = "C:\\WINNT\\system32\\cmd.exe /c start"; try { @SuppressWarnings("unused") Process ps = Runtime.getRuntime().exec(cmd); } catch (IOException e) { e.printStackTrace(); } 上面的代
String cmd = "C:\\WINNT\\system32\\cmd.exe /c start";
try {
@SuppressWarnings("unused")
Process ps = Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
e.printStackTrace();
}
上面的代码将打开命令提示符
如果我想在这个打开的命令提示符中执行一些命令,我必须做什么
感谢您的帮助 我知道
cmd/k[其他一些命令]
将在命令提示符下运行该命令,但它只运行一个命令,因此这是一个有限的解决方案我认为您的方向是正确的。要执行某些命令或多个命令,请重复cmd/k[command]
,如下所示:-
// write dir output to file
Runtime.getRuntime().exec(new String[] {
"cmd",
"/k",
"dir",
">",
"c:\\output.txt"
});
// create test-dir folder in c:\
Runtime.getRuntime().exec(new String[] {
"cmd",
"/k",
"mkdir",
"c:\\test-dir"
});
您不应该使用单字符串形式的
exec()
,您应该始终使用exec(String[]cmdarray)
,否则当exec“神秘地”失败时,您最终会感到惊讶。exec()不是命令解析器,引用/转义内容(如文件名中的空格)不起作用<代码>字符串[]cmd={“C:\\WINNT\\system32\\cmd.exe”、“/C”、“start”}我不明白。你的意思是打开的cmd提示符一旦打开就没有用了吗。我是否应该在不打开命令的情况下直接执行命令?如果希望程序在命令提示符下执行单个命令,则可以使用cmd/k
。如果您想以用户身份使用命令提示符,您应该能够像往常一样单击命令提示符并键入命令。谢谢limc,但我不想看到其他命令在打开的控制台中执行。那有可能吗。。如果我们使用ProcessBuilder呢