0

我正在尝试从某人那里获得帮助,所以我想记录我的屏幕以便以后查看发生的事情。以前,我用过like ssh, 录音效果很好。即使我在服务器上使用,一切都是使用那个简单的管道记录的。teessh user@server | tee recfilebyobu

但是当我将自己通过管道byobu传送到 tee 时,该文件将几乎不包含任何内容。我都用过byobu | tee recfilebyobu |& tee recfile。在这两种情况下, byobu启动并运行良好,但记录文件将仅包含几行与 byobu 会话中发生的事情无关的行。

并 byobu使用tmux. 我也尝试过管道 tmuxtee并且输出文件仅包含[exited].

我的问题是如何tmux写入屏幕?似乎它不使用标准输出或标准错误,就好像它那样, tee可以记录屏幕。有没有办法告诉tmux写入标准输出或标准错误?还是有另一种方法可以将输出重定向到 tee


编辑:我检查了一下 screen | tee recfilescreen |& tee recfile会产生一个空文件。此外,bash | tee recfile只会将已执行命令的输出重定向到文件(user@name:~$'s 和输入命令不在其中)。bash |& tee recfile也会这样做,只是user@name:~$根本不显示 bash ( ) 的提示。

4

1 回答 1

0

正如 gniourf_gniourf 指出的那样, script解决了我的问题。

我还编写了一个简单的 C++ 代码来播放录制的文件。用 编译它--std=c++11。(我script -c byobu --timing=recfile.tim recfile用来录制和scriptout recfile recfile.tim 3播放。)

https://gist.github.com/Shayan-To/672c77fbf9811d769d453c8a9b43747e

于 2017-01-02T12:27:58.710 回答