gpt4 book ai didi

java - 打开 shell 并使用 Java 进行交互

转载 作者:太空宇宙 更新时间:2023-11-04 07:03:01 25 4
gpt4 key购买 nike

我之前问过同样的问题但没有答案,并且发现了一些与此问题类似的其他问题herehere但同样没有合适的答案。谁能帮我解决这个问题吗?我正在尝试从 Java 打开 shell 并与其交互(编写命令并读取 shell 的输出)。命令将由用户给出,例如更改目录、编译 C 程序等。命令列表不固定。

我也尝试过使用/bin/bash -c 方法和以下方法。

Process p = new ProcessBuilder("xterm").start();

Process p = new ProcessBuilder("/bin/bash").start();

谢谢,我希望问题已经解决。

最佳答案

可行解决方案的示例几乎如下所示

   Process process;

rt = Runtime.getRuntime();

try
{

process = rt.exec(new String[]{"bash","-c","ls -al /home/"});

log.warn("message to display");

BufferedReader input = new BufferedReader(new InputStreamReader(process.getInputStream()));

String line=null;

while((line=input.readLine()) != null) {

log.warn(line);
}

int exitVal = process.waitFor();

log.warn("Exited with error code : "+ exitVal);

}
catch (IOException e)
{
log.warn("IO Execption 1 Happen : " + e.getMessage());
}
catch (Exception e)
{
log.warn("Execption Happen : " + e.getMessage());
}

关于java - 打开 shell 并使用 Java 进行交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21822758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com