ProcessBuilderの簡単な使用

2222 ワード

ProcessBuilderで簡単なlinuxコマンドを実行する
demoコード:
public static void testProcessBuilder(String command){
        boolean err =false;
        try {
            //   ProcessBuilder  
            Process p=new ProcessBuilder(command.split(" ")).start();
            //           
            BufferedReader results=new BufferedReader(new InputStreamReader(p.getInputStream()));
            String s;
            while((s=results.readLine())!=null){
                System.out.println(s);
            }
            //             
            BufferedReader errors=new BufferedReader(new InputStreamReader(p.getErrorStream()));
            while((s=errors.readLine())!=null){
                System.err.println(s);
                err=true;
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        if(err){
            throw new RuntimeException("Error executing "+command);
        }
    }
commandパラメータの値は、javaバージョン番号の表示など、実行するコマンドです.
public static void main(String[] args) {
        String command="java -version";
        testProcessBuilder(command);
    }