【发布时间】:2018-07-26 21:32:23
【问题描述】:
我尝试使用以下命令在给定目录中执行 Windows 命令。
try{
String command = "cmd /c start cmd.exe";
Process child = Runtime.getRuntime().exec(command);
OutputStream out = child.getOutputStream();
out.write("cd /d C:\\_private\\Files\\testfiles".getBytes());
out.flush();
out.write("for /f \"DELIMS=\" %x in ('dir /ad /b') do move \"%x*.*\" \"%x\\\"".getBytes());
out.close();
}catch(IOException e){
}
它只是在 Java 项目所在的目录中打开一个命令提示符。
【问题讨论】:
-
另请参阅When Runtime.exec() won't,了解有关正确创建和处理流程的许多好技巧。然后忽略它引用
exec并使用ProcessBuilder创建进程。还将String arg分解为String[] args以解决包含空格字符的路径之类的问题。
标签: java command-prompt