使用ProcessBuilder执行简单的linux命令
demo代码:
public static void testProcessBuilder(String command){
boolean err =false;
try {
//初始化ProcessBuilder对象
Process p=new ProcessBuilder(command.split(" ")).start();
//用于存储执行命令的结果
BufferedReader results=new BufferedReader(new InputStreamReader(p.getInputStream()));
String s;
while((s=results.readLine())!=null){
System.out.println(s);
}
//用于存储执行命令的错误信息
BufferedReader errors=new BufferedReader(new InputStreamReader(p.getErrorStream()));
while((s=errors.readLine())!=null){
System.err.println(s);
err=true;
}
} catch (Exception e) {
e.printStackTrace();
}
if(err){
throw new RuntimeException("Error executing "+command);
}
}
command参数的值为要执行的命令,如查看java版本号
public static void main(String[] args) {
String command="java -version";
testProcessBuilder(command);
}
本文介绍了一种在Java中通过ProcessBuilder类执行Linux命令的方法,并提供了一个示例代码,展示了如何执行命令并获取其输出及错误信息。
2077

被折叠的 条评论
为什么被折叠?



