代码如下:
public void execute(String command) {
System.out.println("Execute the command is: " + command);
if (null == command || "".equals(command)) {
return;
}
InputStream in = null;
InputStream error = null;
InputStreamReader isrIn = null;
BufferedReader brIn = null;
InputStreamReader isrError = null;
BufferedReader brError = null;
StringBuffer sb = new StringBuffer();
boolean flag = false;
try {
Runtime rt = Runtime.getRuntime();
System.out.println(System.getProperty("user.home"));
//在指定的目录下执行
Process pro = rt.exec(command, null, new File(System.getProperty("user.home")));
in = pro.getInputStream();
error = pro.getErrorStream();
isrIn = new InputStreamReader(in);
brIn = new BufferedReader(isrIn);
isrError = new InputStreamReader(error);
brError = new BufferedReader(isrError);
System.out.println("Input Message");
String line = brIn.readLine();
while (null != line) {
System.out.println(line);
line = brIn.readLine();
}
line = brError.readLine();
while (null != line) {
System.out.println(line);
line = brError.readLine();
}
} catch (IOException e) {
StringWriter sw = new StringWriter();
e.printStackTrace(new PrintWriter(sw));
System.out.println(sw.toString());
} finally {
try {
brIn.close();
isrIn.close();
in.close();
brError.close();
isrError.close();
error.close();
} catch (IOException e) {
e.printStackTrace();
}
}
完事,mark一下。