从命令提示符运行prolog,从文件获取输入并将输出发送到文件

时间:2013-04-30 13:30:45

标签: prolog command-line-tool

我想通过命令提示符运行swipl prolog,我想将input.txt作为查询文件读取,并希望将结果输出到output.txt

我的命令行命令:

swipl -f asd.pl < input.txt > output.txt

但我的输出结果是在命令提示符下出现并获得空白的output.txt文件。

1 个答案:

答案 0 :(得分:1)

它适合我。您确定在命令提示符下没有收到错误吗? 注意:要输出 stderr ,您应该使用2> filename

示例(test.pl):

:- initialization(main).

main:-
  repeat,
    read(Term),
     writeln(term(Term)),
    Term=end_of_file -> halt, fail.


swipl.exe -f test.pl < test.pl > test.txt  2> stderr.txt

在test.txt上写道:

term((:-initialization main))
term((main:-repeat,read(_G747),writeln(term(_G747)),_G747=end_of_file->halt,fail))
term(end_of_file)

和stderr.txt:

% c:/swi/workspace/test.pl compiled 0.00 sec, 4 clauses