因為專案中要使用到相關技術,查了一下,是用Runtime類來完成的:
String sErr, sOut, sLine;
Process p = Runtime.getRuntime().exec("command");
InputStreamReader e = new InputStreamReader(p.getErrorStream());
InputStreamReader r = new InputStreamReader(p.getInputStream());
LineNumberReader eLine = new LineNumberReader (e);
sErr="";
while ((sLine = eLine.readLine ()) != null)
sErr += sLine + '\n';
LineNumberReader rLine = new LineNumberReader (r);
sOut="";
while ((sLine = rLine.readLine ()) != null)
sOut += sLine + '\n';
其中command是想執行的程式,這是是獲取標準錯誤和標準輸出的內容,分別放在sErr和sOut中。
在Linux下如果想獲得某個時刻的top結果,command可以寫成:top -b -n 1,但這時讀標準錯誤會掛掉,不知道為什麼。
Java中執行程式並獲取輸出
相關文章
- java獲取當前秒數輸出Java
- C/C++獲取變數型別並輸出C++變數型別
- 【java】【多執行緒】獲取和設定執行緒名字、獲取執行緒物件(3)Java執行緒物件
- 從標準輸入流中讀取並執行shell指定函式函式
- Java讀取本地檔案內容並輸出Java
- js獲取今天到前7天日期並輸出JS
- Java如何獲取當前執行緒Java執行緒
- java -version為stderr輸出,獲取java版本需要重定向Java
- python如何獲取陣列元素的下標並輸出Python陣列
- oracle explain plan for獲取執行計劃並不可靠.OracleAI
- MySQL 如何獲取執行中的Queries資訊?MySql
- 怎樣在程式中獲取所有執行緒的堆疊資訊?執行緒
- 解析域名,獲取域名ip並輸出到終端
- Java多執行緒——獲取多個執行緒任務執行完的時間Java執行緒
- Java併發(一)----程式、執行緒、並行、併發Java執行緒並行
- Java 使用輪詢獲取執行緒返回資料Java執行緒
- Python建立多執行緒任務並獲取每個執行緒返回值Python執行緒
- 執行計劃-1:獲取執行計劃
- 獲取SQL執行計劃SQL
- 在Delphi中捕獲控制檯程式的輸出 (轉)
- Java獲取多執行緒執行結果方式的歸納與總結Java執行緒
- 獲取Java執行緒返回值的幾種方式Java執行緒
- Java:如何輕鬆獲取當前執行的方法名Java
- SQLPLUS執行輸出SQL
- Java 程式中的多執行緒Java執行緒
- golang獲取程式執行路徑Golang
- Mysql中獲取行號MySql
- springboot jar包執行中獲取資原始檔Spring BootJAR
- 獲取執行計劃之Autotrace
- 獲取執行計劃的方法
- java截獲標準輸出(2)(轉)Java
- java截獲標準輸出(1)(轉)Java
- 原創:微信小程式java實現AES解密並獲取unionId微信小程式Java解密
- 使用 C# 捕獲程式輸出C#
- 如何獲取java執行時動態生成的class檔案?Java
- Java中的輸入輸出總結Java
- Linux應用程式獲取執行緒棧的資訊Linux執行緒
- Java在不同執行緒中執行程式碼Java執行緒行程