简单命令可以用
CommandUtil.run(cmd);
复杂命令用
CommandUtil.runt(cmd);
参考:https://blog.csdn.net/qq_21508059/article/details/80334910
package xxxxx.utils; import java.io.IOException; import java.io.InputStream; import java.util.Scanner; import java.util.concurrent.TimeUnit; public class CommandUtil { public static String run(String command) throws IOException { Scanner input = null; String result = ""; Process process = null; try { process = Runtime.getRuntime().exec(command); try { //等待命令执行完成 process.waitFor(10, TimeUnit.SECONDS); } catch (InterruptedException e) { e.printStackTrace(); System.out.println(e.getMessage()); } InputStream is = process.getInputStream(); input = new Scanner(is); while (input.hasNextLine()) { result += input.nextLine() + "\n"; } result = command + "\n" + result; //加上命令本身,打印出来 } finally { if (input != null) { input.close(); } if (process != null) { process.destroy(); } } return result; } public static String runt(String command) throws IOException { Scanner input = null; String result = ""; Process process = null; try { // new String[]{"/bin/sh", "-c", cmd} process = Runtime.getRuntime().exec(new String[]{"/bin/sh", "-c", command}); try { //等待命令执行完成 process.waitFor(10, TimeUnit.SECONDS); } catch (InterruptedException e) { System.out.println(e.getMessage()); e.printStackTrace(); } InputStream is = process.getInputStream(); input = new Scanner(is); while (input.hasNextLine()) { result += input.nextLine() + "\n"; } result = command + "\n" + result; //加上命令本身,打印出来 } finally { if (input != null) { input.close(); } if (process != null) { process.destroy(); } } return result; } }