繁体   English   中英

从Java执行Windows命令

[英]Execute Windows commands from Java

我尝试使用以下命令在给定目录中执行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项目所在的目录中打开一个命令提示符。

该过程已经终止。 您只需启动cmd即可启动另一个cmd 您拥有变量并正在写入的第一个cmd消失了。 仅第二个保持打开状态。

相反,只启动一次CMD并告诉它保持打开状态:

String command = "cmd /k";

接下来,请看一下如何使用参数启动程序。

Process process = new ProcessBuilder("cmd.exe", "/k").start();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM