Webエンジニアのメモ帳

技術的な話を中心に書いています。

JavaのプログラムからOS(Linux)のコマンドを使う方法

あまり使う機会の多い手法ではありませんが、JavaのプログラムからLinuxのコマンドを使う方法を説明します。

このサンプルでは、lsコマンドを実行し、その結果を出力させてみます。

import java.io.BufferedReader;
import java.io.InputStreamReader;

public class Main {
  public static void main(String args[]) {
    try {
      Runtime runtime = Runtime.getRuntime();
      Process result = runtime.exec("ls");
      BufferedReader br = new BufferedReader(new InputStreamReader(result.getInputStream()));
      while (true) {
        String line = br.readLine();
        if (line == null) break;
        System.out.println(line);
      }
    } catch (Exception e) {
      System.out.println("lsコマンドの実行に失敗");
    }
  }
}

今回はlsコマンドを実行してみましたが、他のコマンドも基本的には同じように実行できます。