zoukankan      html  css  js  c++  java
  • 转jlchen java获取memcached所有key

    public class Telnet {
        public static void main(String args[]) {
            String[] keys = allkeys("localhost", 11211).split(" ");
            Arrays.sort(keys);
            for(String s : keys){
                System.out.println(s);
            }
            System.out.println(telnet("localhost", 11211, "stats"));
        }
        public static String allkeys(String host, int port){
            StringBuffer r = new StringBuffer();
            try {
                Socket socket = new Socket(host, port);
                PrintWriter os = new PrintWriter(socket.getOutputStream());
                BufferedReader is = new BufferedReader(new InputStreamReader( socket.getInputStream()));
                os.println("stats items");
                os.flush();
                String l ;
                while (!(l = is.readLine()).equals("END")) {
                    r.append(l).append(" ");
                }
                String rr = r.toString();
                Set<String> ids = new HashSet<String>();
                if(rr.length() > 0){
                    r = new StringBuffer();//items
                    rr.replace("STAT items", "");
                    for(String s : rr.split(" ")){
                        ids.add(s.split(":")[1]);
                    }
                    if (ids.size() > 0){
                        r = new StringBuffer();//
                        for(String s : ids){
                            os.println("stats cachedump "+ s +" 0");
                            os.flush();
                            while (!(l = is.readLine()).equals("END")) {
                                r.append(l.split(" ")[1]).append(" ");
                            }
                        }
                    }
                }
                 
                os.close();
                is.close();
                socket.close();
            } catch (Exception e) {
                System.out.println("Error" + e);
            }
            return r.toString();
        }
        public static String telnet(String host, int port, String cmd){
            StringBuffer r = new StringBuffer();
            try {
                Socket socket = new Socket(host, port);
                PrintWriter os = new PrintWriter(socket.getOutputStream());
                BufferedReader is = new BufferedReader(new InputStreamReader( socket.getInputStream()));
                os.println(cmd);
                os.flush();
                String l ;
                while (!(l = is.readLine()).equals("END")) {
                    r.append(l).append(" ");
                }
                os.close();
                is.close();
                socket.close();
            } catch (Exception e) {
                System.out.println("Error" + e);
            }
            return r.toString();
        }
         
    }
  • 相关阅读:
    java--接口和抽象类
    java-访问权限
    Appium点击掉弹窗的方法小记
    Appium报错及解决小记
    adb获取手机设备蓝牙&热点&wifi状态并操作的笔记
    Linux下安装appium环境搭建杂记
    Appium的使用笔记(自动化测试前的分析)
    Docker学习笔记
    python学习杂记-DDT驱动测试
    python学习杂记-处理CSV文件
  • 原文地址:https://www.cnblogs.com/xsht/p/5407486.html
Copyright © 2011-2022 走看看