加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

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】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读