【发布时间】:2014-03-26 11:30:49
【问题描述】:
我目前正在使用 SWI Prolog 学习 Prolog。我可以使用以下代码在 Linux 中使用脚本文件和参数启动 prolog:
swipl -s logic1.pl folder1
这会启动 prolog,加载 .pl 文件并读取“folder1”参数。
当我尝试通过 cmd 在我的 Windows 7 机器上执行相同操作时,似乎无法识别参数“folder1”。我一直在 cmd 中使用以下命令启动 SWI Prolog:
swipl -s logic1.pl folder1
SWI Prolog 打开,但 prolog 文件检查是否提供了正确的参数,然后抛出一条错误消息,告诉我需要包含 folder1 参数,然后关闭 prolog。
谁能告诉我如何正确启动带有文件参数的 SWI Prolog?
谢谢
【问题讨论】:
-
你能展示你在
logic1.pl中的代码来检索参数吗?我尝试了current_prolog_flag(argv, ArgList),在 Linux 中它包含命令和选项标志作为参数列表的一部分,但在 Windows 中,它只提供参数本身。所以在行为上有一些差异,取决于... -
在 SWI-Prolog 中,还有
os_argv标志。见swi-prolog.org/pldoc/man?section=flags#flag:os_argv
标签: windows prolog swi-prolog