Apache commons exec 简介和简单ping命令方法调用实现
发布时间:2020-12-15 00:11:16  所属栏目:Java  来源:网络整理 
            导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 packagetest.ffm83.commons.exec; importorg.apache.commons.exec.CommandLine;importorg.apache.commons.exec.DefaultExecutor;importorg.apache.com
                
                
                
            | 以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 packagetest.ffm83.commons.exec;
 
importorg.apache.commons.exec.CommandLine;
importorg.apache.commons.exec.DefaultExecutor;
importorg.apache.commons.exec.PumpStreamHandler;
importorg.apache.commons.io.output.ByteArrayOutputStream;
/**
 * 通过commons exec启动ping命令来查看网络情况
 * @author 范芳铭
 */
public classEasyExecPing {
         public static void main(String[] args){
                   EasyExecPing exec = newEasyExecPing();
                   exec.ping("127.0.0.1");
         }
 
         public void ping(String ip) {
                   String command = "ping" + ip;
                   try {
                            ByteArrayOutputStreamoutputStream = new ByteArrayOutputStream();
                            ByteArrayOutputStreamerrorStream = new ByteArrayOutputStream();
 
                            //命令行处理
                            CommandLinecommandline = CommandLine.parse(command);
                            //进行执行体
                            DefaultExecutor exec= new DefaultExecutor();
 
                            exec.setExitValues(null);
 
                            PumpStreamHandlerstreamHandler = new PumpStreamHandler(
                                               outputStream,errorStream);
 
                            exec.setStreamHandler(streamHandler);
                            exec.execute(commandline);//执行
 
                            String out =outputStream.toString("gbk");
                            String error =errorStream.toString("gbk");
 
                            System.out.println(out);
                            System.err.println(error);
                   } catch (Exception e) {
                            e.printStackTrace();
                   }
 
         }
}packagetest.ffm83.commons.exec;
 
importorg.apache.commons.exec.CommandLine;
importorg.apache.commons.exec.DefaultExecutor;
importorg.apache.commons.exec.ExecuteWatchdog;
importorg.apache.commons.exec.PumpStreamHandler;
importorg.apache.commons.io.output.ByteArrayOutputStream;
/**
 * 通过commons exec启动ping命令来查看网络情况
 * @author 范芳铭
 */
public classEasyExecPing {
         public static void main(String[] args){
                   EasyExecPing exec = newEasyExecPing();
                   exec.ping("127.0.0.1-t");
         }
 
         public void ping(String ip) {
                   String command = "ping" + ip;
                   try {
                            ByteArrayOutputStreamoutputStream = new ByteArrayOutputStream();
                            ByteArrayOutputStreamerrorStream = new ByteArrayOutputStream();
 
                            //命令行处理
                            CommandLinecommandline = CommandLine.parse(command);
                            //进行执行体
                            DefaultExecutor exec= new DefaultExecutor();
 
                            exec.setExitValues(null);
                            //利用监视狗来设置超时
                            ExecuteWatchdogwatchdog = new ExecuteWatchdog(60000);
                            exec.setWatchdog(watchdog);
 
                            PumpStreamHandlerstreamHandler = new PumpStreamHandler(
                                               outputStream,errorStream);
 
                            exec.setStreamHandler(streamHandler);
                            exec.execute(commandline);//执行
 
                            String out =outputStream.toString("gbk");
                            String error =errorStream.toString("gbk");
 
                            System.out.println(out);
                            System.err.println(error);
                   } catch (Exception e) {
                            e.printStackTrace();
                   }
 
         }
}以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! | 
