java如何执行cmd命令
今天学到一个小知识,就是如何使用java实现在Windows下执行cmd命令或者在Linux的终端执行命令,也就是执行第三方命令,这里记录一下。要使用到一个类ProcessBuilder,使用方式如下:public class TestProcessBuilder {public static void main(String[] args) throws IOException {...
·
今天学到一个小知识,就是如何使用java实现在Windows下执行cmd命令或者在Linux的终端执行命令,也就是执行第三方命令,这里记录一下。
要使用到一个类ProcessBuilder,使用方式如下:
public class TestProcessBuilder {
public static void main(String[] args) throws IOException {
//创建ProcessBuilder对象
ProcessBuilder processBuilder = new ProcessBuilder();
//通过command方法传入命令,参数有两种,一个是可变参数,另一种是集合,将命令符分开传入或者添加到集合中一起传入均可
processBuilder.command("ipconfig");
//将标准输入流和错误输入流合并,通过标准输入流读取信息,
processBuilder.redirectErrorStream(true);
//执行命令
Process start = processBuilder.start();
//获取回显输入流,进行打印输出
InputStream inputStream = start.getInputStream();
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "gbk");
int len = -1;
char[] c = new char[1024];
StringBuilder sb = new StringBuilder();
while ((len = inputStreamReader.read(c)) != -1){
sb.append(new String(c, 0, len));
}
System.out.println(sb);
}
}
输出结果如下:
与cmd窗口执行的结果一模一样,经测试,在linux环境中同样有效。
更多推荐
已为社区贡献1条内容
所有评论(0)