记录终端输出?

时间:2011-08-28 09:53:15

标签: terminal logging macos

我在终端中使用了一个很酷的程序,但它是预编译的...幸运的是我所需要的只是这个系统的输出,但我需要它的方式很棘手......我需要它才能正常运行但输出最后一个窗口中的文本行到文本文件。我一直在四处寻找,但人们只能这样做才能记录整个事情,而不仅仅是最后一行。

它是一个已编译的unix可执行文件,无法使用类似的东西运行,因为它需要继续运行并且在停止之前不会停止,并且不起作用

2 个答案:

答案 0 :(得分:2)

使用tail仅获取最后一行:

cool-program | tail -n 1 > text-file

如果cool-program永远运行(和输出),则重定向输出并尾随:

cool-program > log
# Later, when you're interested in the current last line:
tail -n 1 log

答案 1 :(得分:1)

您可以使用the tail command仅捕获文件或流的最后n行。例如,要运行./myProgram但仅显示最后一行输出:

./myProgram | tail -n 1

将您的程序输出(|)输入到tail的输入中,该输出会丢弃除最后n行之外的所有内容。

要将该输出保存到文件中,您可以将(>tail的输出重定向到文件:

./myProgram | tail -n 1 > out.txt