我一直在尝试使用新的
ProcessBuilder
在Java中传递几个进程。我找不到一个适合我的例子,当我自己尝试时,进程就会挂起。我需要一个非常简单的例子代码来运行相当于cat test.txt | wc 的命令,但不是通过shell。
--更新--
好的,为了澄清。我知道有方法可以通过读写流来模拟管道。我想知道在Java 7中介绍的 redirectInput 和 redirectOutput 方法是否以某种自动方式完成。
Indicates that subprocess I/O will be connected to the current Java process over a pipe.
意思是说,你必须在当前的Java进程中读写流。也就是说,管道是在你运行的进程和Java进程之间,而不是在你运行的两个进程之间。 - Peter Lawrey