2010-10-18 109 views
4

我写了一个clisp程序,打印出n组x * y随机整数。我想让n = 100,但我不能复制和粘贴整个东西,因为我的linux终端不够远,缺乏更好的单词。大输出普通lisp linux终端

我想要最简单的方法来捕获2200行的linux终端读数。

+4

你就不能输出重定向到使用文件>?例如, cl> outputFile – Kizaru 2010-10-18 22:49:50

+1

完成。工作。有点混乱,因为我必须tab ...这绝对是我想要做的,但有没有办法将输出的* copy *重定向到文件,同时仍然在终端中输出输出? – malenkylizards 2010-10-18 23:36:42

+4

http://ss64.com/bash/tee.html – Ken 2010-10-19 02:14:28

回答

1

有几种不同的Linux终端程序。它们都有或多或少的可访问的方式来配置回滚行​​数。我现在不在我的Linux机器上,但我记得它在GNOME终端的Preferences菜单选项下相对明显的位置,我想KDE是类似的。

我第二次使用shell重定向的建议,虽然;这是更常用的策略。

3

从Lisp中可以通过多种方法在文件中获得输出。

  • 您可以将REPL交互保存到文件中。请参阅DRIBBLE功能。

  • 你也可以用WITH-OPEN-FILE来包装你的代码。

例如:

(with-open-file (*standard-output* "/tmp/foo.text" :direction :output) 
    (your-print-function-here)) 
3

继上述评论,我使用SBCL在命令行上以捕获输出。简单地加载你的图书馆,然后评估你需要什么。

例如:

sbcl --noinform --load "compass.lisp" \ 
       --eval "(print (table-egs (cocomo81)))" \ 
       --eval "(quit)" > copy.txt