如何通过单个命令行提示在java代码中执行多个命令?

时间:2011-09-12 09:54:53

标签: java cmd

我尝试在单个命令行提示符中执行多个命令。在这里,我需要隐藏到目录。我在commad提示符中使用了这个命令"C:\Windows\System32>cacls C:\Users\FSSD\Desktop\test1 /e /c /d %username% & cacls C:\Users\FSSD\Desktop\test3 /e /c /d %username% & cacls C:\Users\FSSD\Desktop\test3 /e /c /d %username%)"它执行得很好,当我在我的java程序中使用这个代码时它不能完全运行。第一个命令将被执行。

在我的java代码中,我使用了这样的命令,

Runtime runtime = Runtime.getRuntime();
    try {
        Process process = runtime
                .exec("cmd.exe /c start cacls C:/Users/FSSD/Desktop/test1  /e /c /d %username%) " + "&"+            
                      "  cacls C:/Users/FSSD/Desktop/test2  /e /c /d %username%" +"&"+  
                      "  cacls C:/Users/FSSD/Desktop/test3  /e /c /d %username%");

    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

在这个错误中我做了什么,否则任何其他可能实现这个......

2 个答案:

答案 0 :(得分:1)

为什么不将这个冗长的命令放入.bat.cmd文件并从Java调用该文件?

答案 1 :(得分:1)

.exec("cmd.exe /c start cacls C:/Users/FSSD/Desktop/test1  /e /c /d %username%) " + "&"+
______________________________________________________________________________^

它的用途是什么? (%username%)