java 调用命令行_java 调用命令行工具类

packagecn.com.ruijie.rgonc.grpc.impl.utils;import java.io.*;public classCommandUtil {public static voidrunCMD(String[] CMD) {

java.lang.Process process= null;try{

process=Runtime.getRuntime().exec(CMD);

ByteArrayOutputStream resultOutStream= newByteArrayOutputStream();

InputStream errorInStream= newBufferedInputStream(process.getErrorStream());

InputStream processInStream= newBufferedInputStream(process.getInputStream());int num = 0;byte[] bs = new byte[1024];while ((num = errorInStream.read(bs)) != -1) {

resultOutStream.write(bs,0, num);

}while ((num = processInStream.read(bs)) != -1) {

resultOutStream.write(bs,0, num);

}

String result= new String(resultOutStream.toByteArray(), "gbk");

System.out.println(result);

errorInStream.close();

processInStream.close();

resultOutStream.close();

}catch(IOException e) {

e.printStackTrace();

}finally{if (process != null) process.destroy();

}

}public static voidrunCmdOnDir(String[] CMD, String path) {

java.lang.Process process= null;try{

process= Runtime.getRuntime().exec(CMD, null, newFile(path));

ByteArrayOutputStream resultOutStream= newByteArrayOutputStream();

InputStream errorInStream= newBufferedInputStream(process.getErrorStream());

InputStream processInStream= newBufferedInputStream(process.getInputStream());int num = 0;byte[] bs = new byte[1024];while ((num = errorInStream.read(bs)) != -1) {

resultOutStream.write(bs,0, num);

}while ((num = processInStream.read(bs)) != -1) {

resultOutStream.write(bs,0, num);

}

String result= new String(resultOutStream.toByteArray(), "gbk");

System.out.println(result);

errorInStream.close();

processInStream.close();

resultOutStream.close();

}catch(IOException e) {

e.printStackTrace();

}finally{if (process != null) process.destroy();

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值