jialisoftw

          Java調用Linux命令行

          Java可以直接調用Linux命令,形式如下:
           Runtime.getRuntime().exec(command)
           舉例:運行ls,top命令可以這樣:
           Runtime.getRuntime().exec("ls");
           但是這樣執行時沒有任何輸出,原因: 
           調用Runtime.exec方法將產生一個本地的進程,并返回一個Process子類的實例,
          (注意:Runtime.getRuntime().exec(command)返回的是一個Process類的實例),
          該實例可用于控制進程或取得進程的相關信息. 由于調用Runtime.exec方法所創建的子進程沒有自己的終端或控制臺,因此該子進程的標準IO(如stdin,stdou,stderr)都通過Process.getOutputStream(),Process.getInputStream(), Process.getErrorStream()方法重定向給它的父進程了.用戶需要用這些stream來向子進程輸入數據或獲取子進程的輸出. 可以采用如下方法:
          try
          {
           Process process = Runtime.getRuntime().exec ("ls"); 
           InputStreamReader ir=new InputStreamReader(process.getInputStream());
           LineNumberReader input = new LineNumberReader (ir);
           String line;
           while ((line = input.readLine ()) != null){
            System.out.println(line)
          }
          catch (java.io.IOException e){
           System.err.println ("IOException " + e.getMessage());
          }

          posted on 2012-10-23 15:48 飛豬一號 閱讀(1434) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          <2012年10月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          統計

          常用鏈接

          留言簿

          隨筆檔案

          友情鏈接

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 尼勒克县| 景德镇市| 同江市| 沙雅县| 东源县| 和林格尔县| 尚志市| 金乡县| 柳河县| 苏尼特左旗| 桂林市| 瓮安县| 定襄县| 高碑店市| 长子县| 弋阳县| 黄山市| 鸡西市| 社会| 南投市| 措美县| 宣城市| 沈阳市| 台中市| 昭平县| 徐汇区| 留坝县| 确山县| 台中县| 许昌市| 崇文区| 文登市| 宣威市| 深水埗区| 商河县| 余庆县| 东丰县| 和平县| 新龙县| 阳城县| 盐城市|