java怎么执行shell命令并返回结果

26次阅读
没有评论

共计 916 个字符,预计需要花费 3 分钟才能阅读完成。

在 Java 中,可以使用 ProcessBuilder 类来执行 shell 命令并返回结果。
下面是一个例子:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class ExecuteShellCommand {public static void main(String[] args) {
String command = "ls"; // 要执行的 shell 命令
try {
// 创建 ProcessBuilder 对象
ProcessBuilder processBuilder = new ProcessBuilder(command);
// 使用 ProcessBuilder 执行命令
Process process = processBuilder.start();
// 通过 process 的输入流获取命令执行结果
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {System.out.println(line);
}
// 等待命令执行完成
int exitCode = process.waitFor();
System.out.println("\n 命令执行完毕,Exit Code :" + exitCode);
} catch (IOException | InterruptedException e) {e.printStackTrace();
}
}
}

在这个例子中,ProcessBuilder对象被用来创建一个子进程来执行指定的命令。然后,通过 getInputStream() 方法获取命令执行结果的输入流,并通过 BufferedReader 读取输出。最后,使用 waitFor() 方法等待命令执行完成,并获取命令的退出码。
上述例子中,执行的是 ls 命令,如果要执行其他命令,只需要将 command 变量替换为所需的命令即可。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-20发表,共计916字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)