我想从 java 运行 cmd.exe 命令(例如 md C:\blabla 来创建一个新目录 C:\blabla )我的代码看起来像这样,它运行没有任何错误:
import java.io.IOException;
import org.apache.commons.exec.CommandLine;
import org.apache.commons.exec.DefaultExecutor;
import org.apache.commons.exec.ExecuteException;
public class Test {
public static void main(String[] args) throws ExecuteException, IOException {
CommandLine cmdLine = new CommandLine("cmd.exe");
cmdLine.addArgument("md");
cmdLine.addArgument("C:\\blabla");
DefaultExecutor executor = new DefaultExecutor();
executor.execute(cmdLine);
}
}
但是如果我去 C:\ 没有我期望的文件夹 blabla,因为在 cmd.exe 中手动键入 md C:\blabla 工作正常。我还尝试了“C:\Windows\System32\cmd.exe”而不是“cmd.exe”,但没有用。
控制台中的输出如下所示:
Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation。版权所有。
C:\Users\Selphiron\workspace\Test>
错误在哪里?