我想在 Guile 中创建两个进程,并将其中一个的输出(stdout)作为输入(stdin)发送到另一个。
使用以下示例,如何做到这一点?
echo "foo bar" | wc
输出:
1 2 8
是的,您可以使用open-output-pipe
:
(let ((p (open-output-pipe "wc")))
(display "The quick brown fox jumps over the lazy dog.\n" p)
(close-pipe p))
这相当于echo "The quick brown fox jumps over the the lazy dog." | wc
(包括echo
's 隐式换行,因为我很特别,哈哈)。
当然,有一个open-input-pipe
类比。阅读 Guile 手册的管道部分了解更多详细信息。