Linux中如何java联网,如何在Java中运行Linux命令?
慕運(yùn)維8079593
您可以java.lang.Runtime.exec用來運(yùn)行簡(jiǎn)單的代碼。這樣可以返回a,Process并且您可以直接讀取其標(biāo)準(zhǔn)輸出,而不必將輸出臨時(shí)存儲(chǔ)在磁盤上。例如,這是一個(gè)完整的程序,將展示如何執(zhí)行此操作:import java.io.BufferedReader;import java.io.InputStreamReader;public class testprog {? ? public static void main(String args[]) {? ? ? ? String s;? ? ? ? Process p;? ? ? ? try {? ? ? ? ? ? p = Runtime.getRuntime().exec("ls -aF");? ? ? ? ? ? BufferedReader br = new BufferedReader(? ? ? ? ? ? ? ? new InputStreamReader(p.getInputStream()));? ? ? ? ? ? while ((s = br.readLine()) != null)? ? ? ? ? ? ? ? System.out.println("line: " + s);? ? ? ? ? ? p.waitFor();? ? ? ? ? ? System.out.println ("exit: " + p.exitValue());? ? ? ? ? ? p.destroy();? ? ? ? } catch (Exception e) {}? ? }}編譯并運(yùn)行后,它輸出:line: ./line: ../line: .classpath*line: .project*line: bin/line: src/exit: 0如預(yù)期的那樣。您還可以獲得混亂的流程標(biāo)準(zhǔn)錯(cuò)誤的錯(cuò)誤流和流程標(biāo)準(zhǔn)輸入的輸出流。在這種情況下,輸入和輸出是相反的,因?yàn)樗菑牧鞒痰皆摿鞒痰妮斎?即流程的標(biāo)準(zhǔn)輸出)。如果要合并來自Java的流程標(biāo)準(zhǔn)輸出和錯(cuò)誤(而不是2>&1在實(shí)際命令中使用),則應(yīng)查看ProcessBuilder。
總結(jié)
以上是生活随笔為你收集整理的Linux中如何java联网,如何在Java中运行Linux命令?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux terminal教程,Lin
- 下一篇: linux exec 二程序,二十五、L