我看过Executing a shell command from Common Lisp以及其中的回答,但我仍不确定SBCL是否提供从代码中执行shell命令的方法。
SBCL手册支持POSIX,但我希望有更高级别的方法。具体来说,我想调用一个Python脚本并捕获返回值。有没有什么方法可以做到这一点?
给定文件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