zoukankan      html  css  js  c++  java
  • java获取远程服务器应用程序服务状态

    package lct.conference.test;
    
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStreamReader;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    
    import net.sf.json.JSONArray;
    import net.sf.json.JSONObject;
    
    public class Test3 {
            public static void main(String[] args){
            String[] cmdStr = { "cmd", "/C", "wmic /node:"192.168.0.34" /user:"administrator" /password:"12345" service get /value" };
            List<Map<String, Object>> list = null;
            try {
                list = getAllResult(cmdStr, 25);
                System.out.println(list.size());
                JSONArray jr = JSONArray.fromObject(list);
                JSONObject jo = new JSONObject();
                for(int i=0;i<list.size();i++){
                    jo.clear();
                    jo=(JSONObject) jr.get(i);
                    if("Apache Tomcat".equals(jo.get("Caption"))){
                        String ifStarted = jo.get("Started").toString();
                        System.out.println( "Apache Tomcat服务"+ifStarted);
                    }else if("MySQL".equals(jo.get("Caption"))){
                        String ifStarted = jo.get("Started").toString();
                        System.out.println( "MySQL服务"+ifStarted);
                    }else if("PCMS Service".equals(jo.get("Caption"))){
                        String ifStarted = jo.get("Started").toString();
                        System.out.println( "PCMS Service服务"+ifStarted);
                    }else if("PCMS Watch Service".equals(jo.get("Caption"))){
                        String ifStarted = jo.get("Started").toString();
                        System.out.println( "PCMS Watch Service服务"+ifStarted);
                    }
                }
                System.out.println(list);
            } catch (IOException e) {
                e.printStackTrace();
                System.out.println( "获取所有服务信息失败!");
            }
        }
        private static List<Map<String, Object>> getAllResult(String[] cmdStr, int flag) throws IOException {
            List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
            Integer index = 1;
            Process p = null;
            String str = null;
            String[] arrStr = new String[2];
            Map<String, Object> map = new HashMap<String, Object>();
            InputStreamReader isr = null;
            BufferedReader br = null;
            try {
                p = Runtime.getRuntime().exec(cmdStr);
                isr = new InputStreamReader(p.getInputStream(),"GBK");
                br = new BufferedReader(isr);
                while ((str = br.readLine()) != null) {
                    if (str!=null && !"".equals(str)) {
                        if (index % flag == 0) {
                            list.add(map);
                            map = new HashMap<String, Object>();
                        }
                        arrStr = str.split("=");
                        str = str.endsWith("=") ? "" : arrStr[1];
                        map.put(arrStr[0], str);
                        index++;
                    }
                }
            } catch (IOException e) {
                e.printStackTrace();
                System.out.println("获取进程的所有信息失败!");
                throw e;
            } catch (Exception e) {
                e.printStackTrace();
                System.out.println("获取执行结果失败!");
            } finally {
                try {
                    if (br != null) {
                    }
                    br.close();
                    if (isr != null) {
                        isr.close();
                    }
                } catch (IOException e) {
                    e.printStackTrace();
                }
                if (p != null) {
                    p.destroy();
                }
            }
            return list;
        }
    }
  • 相关阅读:
    mysql #与$的区别
    linux连接mysql
    19年春第十三周学习
    第二阶段冲刺-02
    第二阶段冲刺-01
    19年春第十二周学习
    第一阶段SCRUM冲刺-10
    第一阶段SCRUM冲刺-09
    第一阶段SCRUM冲刺-08
    19年春第十一周学习
  • 原文地址:https://www.cnblogs.com/penghq/p/10136965.html
Copyright © 2011-2022 走看看