0

私はシェルスクリプトを介してファイルを実行し、その出力をそのファイルに書き込もうとしています。

スクリプトは非常に単純です。

/usr/local/sicstus4.1.1/bin/sicstus -l run --goal "runh('examples / callbacks_matlab.pl'、S)、halt。" >「/Users/Andrew/Dropbox/IP/modellingphase/rules.txt」

ただし、これを実行すると、次のエラーで失敗します。sicstus(24883,0x7fff70916ca0)malloc:*オブジェクト0x10082b408のエラー:解放されたオブジェクトのチェックサムが正しくありません-オブジェクトは解放された後に変更された可能性があります。*デバッグするmalloc_error_breakにブレークポイントを設定します

一方、ゴールから「停止」を削除すると、すべてが正常になりますが、Sicstusはまだ実行されています。

シェルスクリプトで上記のエラーが発生することなく、sicstusを終了する方法はありますか?

お時間をいただきありがとうございます。

アンドレアス

4

1 に答える 1

1

スクリプトを実行し、入力パイプをでリダイレクトするとどうなります/dev/nullか?そして、停止オプションを削除します。

/usr/local/sicstus4.1.1/bin/sicstus -l run --goal "runh('examples/calls_matlab.pl', S)." > "/Users/Andrew/Dropbox/IP/modelling phase/rules.txt" < /dev/null

私がしたことはsicstus -l my_file.pl --goal "test_strategy(10,random,random)." < /dev/null

test_strategyシェルに戻る私の述語はどこにありますか。

乾杯、ダン

于 2012-03-06T02:28:52.013 に答える