package db.util; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import java.io.StringWriter; import java.io.UnsupportedEncodingException; import java.io.Writer; import java.util.List; public class CMDUtil { public static String runCMD(String cmd) throws IOException { // ProcessBuilder是一个用于创建操作系统进程的类,它的start()方法用于启动一个进行 ProcessBuilder processBuilder = new ProcessBuilder(cmd); // 启动进程 Process process = processBuilder.start(); // 解析输出 String result = convertStreamToStr(process.getInputStream()); // System.out.println(result); return result; } public static String runCMD(List commandList) throws IOException { // 创建命令集合 // ProcessBuilder是一个用于创建操作系统进程的类,它的start()方法用于启动一个进行 ProcessBuilder processBuilder = new ProcessBuilder(commandList); // 启动进程 Process process = processBuilder.start(); // 解析输出 String result = convertStreamToStr(process.getInputStream()); // System.out.println(result); return result; } public static String convertStreamToStr(InputStream is) throws IOException { if (is != null) { Writer writer = new StringWriter(); char[] buffer = new char[1024]; try { Reader reader = new BufferedReader(new InputStreamReader(is, "UTF-8")); int n; while ((n = reader.read(buffer)) != -1) { writer.write(buffer, 0, n); } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } finally { is.close(); } return writer.toString(); } else { return ""; } } }