【发布时间】:2011-07-18 08:05:36
【问题描述】:
大多数语言都支持双向进程通信。例如,在 Python 中,我可以(草率地)这样做:
>>> from subprocess import *
>>> p = Popen('nslookup', stdin=PIPE, stdout=PIPE)
>>> p_stdin, p_stdout = p.communicate("www.google.com")
>>> print p_stdin
Server: ...
在 R 中,无论我是用“r+”还是“w+”打开管道,我似乎只能走一条路。此外,即使我通过R -f ... 或R < ... 运行脚本,实际控制台标准输入/标准输出中也会出现奇怪的行为。
我的问题归结为以下问题 - 是否有可能(不编写 C 方法!)在 R 中重现上述 Python 示例中的双向进程通信?
【问题讨论】: