SBCL Run Shell命令

时间:2015-03-10 04:09:02

标签: python shell lisp common-lisp sbcl

我已经看过Executing a shell command from Common Lisp及其答案,但我还不确定SBCL是否提供了一种从代码执行shell命令的方法。

SBCL Manual确实支持POSIX,但我希望能有更高级别的东西。具体来说,我想调用Python脚本并捕获返回值。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:4)

给定文件test.py

import sys
sys.exit(42)

您可以使用sb-ext:run-program运行它并检查退出代码,如下所示:

CL-USER> (sb-ext:run-program "python" '("test.py") :search t :wait t)
#<SB-IMPL::PROCESS :EXITED 42>
CL-USER> (sb-ext:process-exit-code *)
42