Java ProcessBuilder using authentication



我正在使用java进程生成器执行外部应用程序。

例如

./appl -file user@host:/tmp/out.log 

此应用程序首先从外部主机检索文件out.log,然后执行。此外,执行上述命令提示符后,它会提示输入主机密码。

如何使用 Java 进程生成器实现此目的?我尝试以下面提到的方式输入命令。但是,它会抛出一个错误,指出找不到主机。

List<String> command = new ArrayList<String>();
command.add("./appl");
command.add("-file");
command.add("user@host:/tmp/out.log");

正如你明确提到的:此外,执行上述命令提示符后,它会提示输入主机密码。

我相信该命令未执行的原因是因为您触发的子进程需要一个输入(主机密码),而您没有提供该输入。因此,您需要OutputStream为子流程提供输入。首先,请阅读此问题。

最新更新