【发布时间】:2010-09-08 18:52:28
【问题描述】:
如果我通过 Java 的 ProcessBuilder 类启动一个进程,我可以完全访问该进程的标准输入、标准输出和标准错误流,如 Java InputStreams 和 OutputStreams。但是,我找不到将这些流无缝连接到System.in、System.out 和System.err 的方法。
可以使用redirectErrorStream() 获取包含子进程的标准输出和标准错误的单个InputStream,然后循环并通过我的标准输出发送它——但我找不到办法并让用户输入进程,如果我使用 C system() 调用,他或她就可以。
当 Java SE 7 出现时,这似乎是可能的——我只是想知道现在是否有解决方法。如果子进程中isatty()的结果进行重定向,则加分。
【问题讨论】:
-
非常好——我也在寻找如何做到这一点。 耶 Stackoverflow :)