1
Q
重定向標準輸出流
A
回答
5
您可以打開文件進行寫入和重定向current_ouput
它是這樣的:
?- current_output(Orig), % save current output
open('file.txt', write, Out),
set_output(Out),
listing,
close(Out),
set_output(Orig). % restore current output
或者,SWI-Prolog的提供了一個謂語with_output_to/2
可用於電流輸出重定向一個目標。請務必閱讀文檔,但在短:
?- open('file.txt', write, Out),
with_output_to(Out, listing),
close(Out).
現在的listing/0
輸出將被寫入file.txt
。 但請記住,那裏會有很多東西。您可能想要使用listing/1
來了解特定的謂詞嗎?在這種情況下,使用clause/2
和portray_clause/2
是另一種選擇,特別是如果您想要更多地控制寫入文件的內容和方式。 listing
僅用於我猜測的交互式使用。
相關問題
- 1. 標準輸出重定向
- 2. 重定向標準輸出
- 3. 重置標準輸出流
- 4. 重定向標準流
- 5. 破折號重定向從標準輸入到標準輸出
- 6. 重定向進程標準輸入和標準輸出到netcat
- 7. C:重定向標準輸入,標準輸出到管道
- 8. 標準輸出重定向MATLAB
- 9. 瞭解stderr標準輸出重定向
- 10. 使用Shell重定向標準輸出()
- 11. 重定向標準輸出數據「>」
- 12. 將System.setout重定向回標準輸出
- 13. 在Unix上重定向標準輸出
- 14. 標準輸出重定向到文件
- 15. 重定向標準輸出通過ssh
- 16. ProcessBuilder重定向到標準輸出
- 17. 如何重定向到標準輸出?
- 18. CreateProcessWithLoginW - 重定向標準輸出
- 19. 標準輸出重定向與ctypes
- 20. 重定向標準輸出OCaml
- 21. 錯誤重定向標準輸出
- 22. 無在重定向標準輸出
- 23. zsh:重置標準輸出/標準錯誤重定向
- 24. 標準輸出重定向到列表<string>或流
- 25. 流程執行期間重定向標準輸出不刷新
- 26. 在c中重定向標準輸出,然後重置標準輸出
- 27. 重定向標準輸入
- 28. 重定向標準輸入
- 29. 如何在啓動時重定向標準錯誤*不重定向標準輸入和標準輸出?
- 30. 輸出流的重定向
爲什麼你說'portray_clause/2'是首選的,當'listing(specific_pred/1)'會做什麼所需?使用'portray_clause'更需要手動處理。 – false
@false正是因爲同樣的原因,我猜。我總是覺得'listing/1'是爲了在頂層使用(這是我至少使用它的方式)。如果一個人開始寫一個文件,我只是假設他們正在做更復雜的事情,而不是看一個謂詞的定義。我會糾正我的措辭。 –