如标题。我想复制当前 xfce 或 gnome 终端会话中的所有输出并保存到文件中以供进一步分析。
答案1
遗憾的是,我认为唯一真正有效/可靠的解决方案是修补伪终端代码本身来执行此操作。我一直在寻找在 xfce 中执行此操作的方法,目前我得到的最简洁的答案是:使用鼠标从上到下复制整个缓冲区,然后运行以下命令:
$ xclip -selection c -o > ~/输出伪终端
我真正想要的是可以始终记录我的所有终端输出的东西。对我来说,RAM 和磁盘空间很便宜,而且实际上,即使我不小心点击了所有那些充斥屏幕的愚蠢命令,我在终端上一年的工作量仍然只有几兆字节,与记录这一切的琐碎相比,记录它们的好处很多。
此外,虽然我认为自动保存输出的补丁是理想的,但也许更简单的解决方法补丁可以是一个自动“选择所有”文本并复制的命令 - 这样它至少可以与 xclip 和 cron-scripted 等结合起来,而不会迫使我们笨拙地使用鼠标:)
答案2
我得到了一个可行的方法,尽管我不太喜欢它,但我不需要拖动鼠标来选择所有文本。
- 三击当前终端的最后一行(不要松开鼠标)。
- 按下 SHIFT+HOME 键,我们将进入第一行。
- 将鼠标拖到第一行。
- 右键单击,编辑->复制。
答案3
将其重定向到文件:
$ 示例命令 > ~/output.txt
在哪里示例命令是生成要保存的输出的命令。波浪号 ( ~
) 表示您的主目录,因此文件 output.txt 将位于包含命令输出的主文件夹下。
如果您想要所有输出,包括错误:
$ 示例命令 > ~/output.txt 2>&1
如果您希望将其保存在剪贴板上,则有以下几种选择:
如果输出不多,您可以突出显示输出并右键单击以将其保存到剪贴板。如果要突出显示的内容太多,请将其传输到 xclip(您可能需要根据您的发行版安装它):
$ 示例命令 | xclip
xclip 允许命令行与 X 服务器的剪贴板进行交互。
答案4
pbcopy 工作得很好:)
将其添加到你的 .bashrc 或 .zshrc
复制 { $1 | pbcopy }
这会将命令的输出复制到缓冲区。
使用 Ctrl+V 或 pbpaste 显示输出。
例如:
命令复制密码
将当前目录输出到缓冲区