将输出从终端重定向到 unix/linux 中的文件

将输出从终端重定向到 unix/linux 中的文件

我的项目中遇到了一个小问题。我有一个菜单驱动的程序,我的选择之一是显示全部,它使用循环显示地图中的所有条目。显示屏位于终端上,我无法查看所有条目,因为它只显示提示再次出现之前的最后几个条目。我希望将输出重定向到一个文件,以便我可以使用更多命令并为用户提供相应的视图。请建议一些命令或代码。

答案1

您可以在启动程序时设置管道以将其输出写入文件。

$ your_program > /tmp/output.txt

如果程序对输出执行其他操作,例如提示用户输入,则它很可能使用第二个输出通道(错误通道)来显示菜单,因此这可能不会妨碍正常操作,只会捕获转储输出。

此外,GNU 等程序screen对此tmux非常方便,它允许您从窗口捕获和查看回滚历史记录,甚至捕获其中的一部分并将其记录到文件中。

如果这不起作用,请告诉我们有关您的程序和用法的更多信息。

答案2

您可以使用以下语法将终端输出重定向到文件:

program params > fileName

答案3

标准输出(stdout):

command > file

或者如果您想附加:

command >> file

标准错误(stderr):

command 2> file

或者如果您想附加:

command 2>> file

相关内容