使用现有的clisp流

时间:2013-08-27 12:43:51

标签: clisp

我是使用clisp-2.49的lisp新手。

我正在尝试编写lisp来模仿这个相当简单的bash:

for i in $(program-1)
do
  some-logic
  program-2 $i
done | program-3

有多种方法可以执行程序1和3(run-program,make-pipe-io-stream以及其他程序),所有这些方法都会评估表单并返回一个流供我使用。但是对于程序2,我需要运行程序并告诉表单使用我已经打开的流。我找不到任何形式。我忽略了一些明显的东西吗?是否有一些我不知道的微妙之处?

非常感谢,R。

1 个答案:

答案 0 :(得分:1)

您可以使用未记录的函数ext::launch并将其传递给:output pipe-stream

或者,您可以将整个shell脚本作为字符串传递给EXT:RUN-SHELL-COMMAND

但是,一般来说,Lisp的设计并不是a replacement for shell。通过在shell中处理你的program-*执行,你可能会更好。