糯米文學吧

位置:首頁 > IT認證 > J2EE

Java調用Linux命令行

J2EE3W

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());

}