0
을 내가 가지고있는 OUPUT 프로세스로 명령을 실행하고 반환하는 다음과 같은 방법 :는 잠시 후 자바 스레드/프로세스를 가입 - 자바
public String execute(String command) {
StringBuffer output = new StringBuffer();
Process p;
try {
p = Runtime.getRuntime().exec(command);
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
while ((line = reader.readLine()) != null) {
output.append(line + "\n");
}
} catch (Exception e) {
logger.error(e.getMessage());
}
return output.toString();
}
이 코드는 때마다 명령이 리턴 그러나 좋은입니다 top
과 같이 계속 실행중인 프로세스의 경우 이는 결코 반환되지 않을 수 있습니다. 코드가 계속해서 실행될 필요는 없습니다. 스냅 샷을 캡처하기 만하면됩니다. 또는 3 초와 같은 시간이 지나면 시간이 초과 될 수 있습니다. 어떻게해야합니까?