Process process = Runtime.getRuntime().exec("***");
exec("")方法中是否可以把多个命令写在一起???
比如下面的命令:
1.cd d:
2.jar jar xvf *.jar
exec("")方法中是否可以把多个命令写在一起???
比如下面的命令:
1.cd d:
2.jar jar xvf *.jar
调试欢乐多
test.sh:
#!/bin/sh
cd d:
tar -xvf *.jar
~
String[] commandstr = {"/bin/sh","test.sh"};
Process p = Runtime.getRuntime().exec(commandstr);
或者说你定义一个数组,
String[] commandstr = {"cd d","jar jar xvf *.jar"};
Process p = Runtime.getRuntime().exec(commandstr);
public static void main(String[] args) {
try {
String[] commandstr = {"cd d:","jar xvf d:/test.jar"};
Process process = Runtime.getRuntime().exec(commandstr);
//process.waitFor();
} catch (Exception e) {
e.printStackTrace();
}
}}java.io.IOException: Cannot run program "cd d:": CreateProcess error=2, ?????????
at java.lang.ProcessBuilder.start(ProcessBuilder.java:459)
at java.lang.Runtime.exec(Runtime.java:593)
at java.lang.Runtime.exec(Runtime.java:466)
at Test.main(Test.java:6)
Caused by: java.io.IOException: CreateProcess error=2, ?????????
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.<init>(ProcessImpl.java:81)
at java.lang.ProcessImpl.start(ProcessImpl.java:30)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:452)
... 3 more
如果是unix,写在shell里,调用shell
String[] commandstr = {"cmd cd d:","jar xvf d:/test.jar"};