我们想使用 sbcl 和 asdf 从 Lisp 中调用 Windows shell 命令uiop:run-program
。
我们在 Windows 10 上使用 sbcl 1.3.6 在 emacs/slime 下所做的事情。64 位和 asdf 3.1.5。是:
CL-USER>(require 'asdf)
(shadowing-import 'asdf::run-program)
然后,正常工作(如在 Unix 上)是这样的:
CL-USER>(run-program "echo test" :output :string)
"test
"
NIL
0
CL-USER>
但是根本不起作用并且出错的是对文件的任何操作:
(run-program "dir")
(run-program "copy foo.txt tmp")
(run-program "xcopy *.texi tmp")
有或没有:output :string
作为论据。我们不确定我们是否做错了什么,或者是否存在与 sbcl 或 asdf 相关的错误,或者 asdf 和 sbcl for windows 10 是否仍然支持此功能。类似的 shell 命令似乎在 Unix 上运行良好。
任何帮助将不胜感激。