java读取linux可执行文件输出结果
时间: 2023-11-21 18:45:03 浏览: 38
要在Java中读取Linux可执行文件的输出结果,可以使用`ProcessBuilder`类来执行可执行文件,并使用`InputStream`来读取其输出。下面是一个示例代码:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ExecutableOutputReader {
public static void main(String[] args) {
try {
// 创建ProcessBuilder对象,设置可执行文件及参数
ProcessBuilder pb = new ProcessBuilder("/path/to/executable", "arg1", "arg2");
// 启动进程并获取输入流
Process process = pb.start();
InputStream inputStream = process.getInputStream();
// 读取输入流的内容
BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
// 等待进程结束并获取返回值
int exitCode = process.waitFor();
System.out.println("Exit code: " + exitCode);
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
```
请将`/path/to/executable`替换为你要执行的可执行文件的路径,`arg1`和`arg2`是可选的参数。该代码将执行可执行文件并逐行打印输出结果。最后,它还打印进程的退出代码。