从bash脚本运行Prolog命令

从bash脚本运行Prolog命令,bash,prolog,Bash,Prolog,要启动加载我的程序的Prolog shell,我只需在终端中输入swipl app.pl。然后,为了使用文本文件参数调用Prolog程序app.pl中定义的谓词函数verifyInputFile,我编写了verify'path/to/file.txt'。是否可以编写一个bash脚本来执行上述所有任务 似乎可以从bash脚本运行内置的Prolog命令,例如write-line命令,方法是输入以下swipl而不是使用而不是使用。可能您的问题是验证谓词。。。你能发布代码吗?也许你的问题是验证谓词。。。

要启动加载我的程序的Prolog shell,我只需在终端中输入swipl app.pl。然后,为了使用文本文件参数调用Prolog程序app.pl中定义的谓词函数verifyInputFile,我编写了verify'path/to/file.txt'。是否可以编写一个bash脚本来执行上述所有任务


似乎可以从bash脚本运行内置的Prolog命令,例如write-line命令,方法是输入以下swipl而不是使用而不是使用。可能您的问题是验证谓词。。。你能发布代码吗?也许你的问题是验证谓词。。。您可以发布代码吗?如果目标失败或抛出错误,最好使用swipl-s test-g test$VARIABLE-t halt来获取非零退出代码。这非常有效,但无论何时测试谓词返回true,都可以在控制台上打印true。目前,除非测试返回false,否则不会向控制台打印任何内容?如果目标失败或抛出错误,最好使用swipl-s test-g test$VARIABLE-t halt获取非零退出代码。这非常有效,但无论何时测试谓词返回true,都可以向控制台打印true。目前,除非测试返回false,否则不会向控制台打印任何内容?
Input: swipl app.pl <<< "verify('tests/unit/af-test1.txt')."
true
ERROR: Type error: `character_code' expected, found `-1' (an integer)
ERROR: In:
ERROR:   [11] char_code(_2720,-1)
ERROR:   [10] '$in_reply'(-1,'?h') at /usr/local/Cellar/swi-prolog/8.0.3_1/libexec/lib/swipl/boot/init.pl:848
verify(Input) :-
   see(Input), read(Transitions), read(Labling), 
   read(State), read(Formula), seen,
   check(Transitions, Labling, State, [], Formula).   
VARIABLE=1                                                                                                            
swipl -s test -g "test($VARIABLE),halt."