所以我想在我的Linux计算机上运行一个进程,并在发送时按行进行输出,例如(我刚刚完成了):
持续运行的过程每五秒输出一个随机数
52
72
33
67
26
74
2
我希望在打印到控制台时获取该号码。
目前,我有一些代码可用于执行命令,但我不确定这是否有效:
public OutputStream executeCommand(String command) {
try {
ProcessBuilder pb = new ProcessBuilder(command);
Process p = pb.start();
OutputStream ops = p.getOutputStream();
return ops;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
我几乎只是问我如何获得某种输出并在打印时读取它。
答案 0 :(得分:1)
请注意,下面的代码可能会抛出IOException。
Runtime runtime = Runtime.getRuntime() ;
Process process = runtime.exec("Your command") ;
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())) ;
String line = null ;
while ((line = reader.readLine())!= null){
System.out.println(line);
}