Java調用Linux命令行

Java語言以其跨平臺性和簡易性而著稱,在Java裏面的lang包裏(ime)提供了一個允許Java程序與該程序所運行的環境交互的接口,這就是Runtime類,在Runtime類裏提供了獲取當前運行環境的接口。那麼java怎麼調用Linux命令行,跟yjbys小編一起來學習一下吧!

Java調用Linux命令行

Java可以直接調用Linux命令,形式如下:

untime()(command)

舉例:運行ls,top命令可以這樣:

untime()("ls");

但是這樣執行時沒有任何輸出,原因:

調用方法將產生一個本地的`進程,並返回一個Process子類的實例

(注意:untime()(command)返回的是一個Process類的實例),

該實例可用於控制進程或取得進程的相關信息. 由於調用方法所創建的子進程沒有自己的終端或控制檯,因此該子進程的標準IO(如stdin,stdou,stderr)都通過utputStream(),nputStream(), rrorStream()方法重定向給它的父進程了.用戶需要用這些stream來向子進程輸入數據或獲取子進程的輸出. 可以採用如下方法:

try

{

Process process = untime() ("ls");

InputStreamReader ir=new InputStreamReader(nputStream());

LineNumberReader input = new LineNumberReader (ir);

String line;

while ((line = Line ()) != null){

tln(line)

}

catch (ception e){

tln ("IOException " + essage());

}