jcraft 执行shell命令并处理返回结果
时间: 2023-07-19 22:04:39 浏览: 167
可以使用Java的ProcessBuilder类来执行shell命令,并通过Process类的getInputStream()方法获取命令执行后的输出结果。下面是一个简单的示例代码:
```java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
public class ShellCommandExecutor {
public static void main(String[] args) {
try {
ProcessBuilder builder = new ProcessBuilder("/bin/sh", "-c", "ls -al");
builder.redirectErrorStream(true);
Process process = builder.start();
InputStream is = process.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
```
在上面的示例代码中,我们使用ProcessBuilder类来执行shell命令"ls -al",并通过getInputStream()方法获取命令执行后的输出结果。然后,我们使用BufferedReader类来读取输出结果,并将结果打印到控制台上。
阅读全文