除非事后。这意味着我不是准备将所有输出记录或通过管道传输到文件,而是处理已经发生的输出,并且我省略了记录到文件的输出。我不得不认为有一种更简单的方法来获取当前输出,而不是花几分钟向上滚动 7000 行输出,将其复制并粘贴到文档中。
考虑到这可能取决于终端模拟器,在本例中我使用 Konsole 和 zsh。
事后如何将终端输出保存到文件中?
答案1
使用konsole
,File->Save output as
与 一样工作CTRL-SHIFT-S
,但您只会保存缓冲区中的内容。
答案2
我用script
这个东西。它简单、简单且开箱即用。
- 首先
script
在您的终端中调用:
# script output.txt
Script started, file is output.txt
开始正常运行您的命令。
一旦您决定获取命令和所有输出,请运行
exit
:
# exit
exit
Script done, file is output.txt
- 您的所有输出都将位于 output.txt 中。
答案3
类似于以下问题: 将所有终端输出保存到文件中
对于 xfce4-terminal,请使用 accels.scm 文件。
例如,将 Ctrl-Shift-s 从“设置标题”重新分配为“保存内容”打开进行编辑:~/.config/xfce4/terminal/accels.scm
然后搜索“save-contents”并修改该行如下:
(gtk_accel_path "<Actions>/terminal-window/save-contents" "<Primary><Shift>s")
; This will map 'save the entire scrollback buffer to a file' to the Left_Ctrl-Shift-s keystrokes.
; NOTE: commented lines start with a ;
在 xfce4 终端中选择“终端,保存内容..”或简单地使用 Left_Ctrl-Shift-s。
将打开一个文件管理器,允许您选择保存包含屏幕缓冲区输出的文件的位置。