Inhellior Shell或UIOP:与后台进程交互

时间:2016-09-01 12:30:24

标签: lisp common-lisp named-pipes sbcl

所以,我实际上得到了一个程序,使用劣质shell从SBCL Lisp运行(可能是UIOP会很好)。无论如何,既然我可以做到这一点,我仍然不知道如果它在后台运行,如何与程序进行交互。

所有这些功能,如连接到正在运行的程序的stdin和stdout的管道和流,都会被公布,只是没有记录。看起来这是最基本的事情。

有人有这样做的例子吗?

感谢任何帮助。

-Todd

1 个答案:

答案 0 :(得分:1)

你看过SBCL手册了吗? RUN-PROGRAM的选项记录在那里: http://www.sbcl.org/manual/#Running-external-programs

我认为您只需创建流并通过RUN-PROGRAM:input:output参数将其传递给:error

这是一个示例,我给RUN-PROGRAM个流参数执行gnuplot(虽然我不会让输入流保持打开状态)。 https://github.com/belambert/cl-gnuplot/blob/master/src/gnuplot.lisp#L18