如何以文本模式记录我的 Linux 终端会话,并在稍后进行共享或重放?

上次更新时间:2020 年 9 月 14 日

我想以文本模式记录我的 Amazon Elastic Compute Cloud (Amazon EC2) Linux 终端会话或 SSH 会话,并在以后进行共享或重放。我该如何操作?

简短描述

您可以使用 script 命令将 SSH 或终端会话记录到文件中。如果需要帮助,可以运行 man script 命令来访问用户手册。

解决方法

记录会话

1.    打开 SSH 终端。将以下命令中的示例 IP 地址替换为您的 IP 地址或主机名。

$ ssh 198.51.100.0

2.    启动脚本会话。在以下命令中,-a 可启用追加模式,-t 可设置计时文件。

$ script -a -t timingfile.txt typescript.txt

3.    运行要记录的任何命令。系统将记录命令和任何输出。

4.    完成后,通过键入 exit 或按 Ctrl-D 退出脚本会话。

5.    名为 typescript.txttimingfile.txt 的文件中包含所记录的数据。您可以根据需要共享这些文件。

重放会话

1.    将 typescript.txttimingfile.txt 文件复制到 Linux(或 Unix)服务器或从同一服务器重放它们。

2.    立即使用以下命令显示 typescript.txt 文件的完整输出,没有丝毫延迟:

$ cat typescript.txt

3.    使用以下命令以正常时间重放此文件:

$ scriptreplay --timing=timingfile.txt typescript.txt

4.    使用以下命令重放带有时间因子的文件以实现更快速的重放:

$ scriptreplay --timing=timingfile.txt typescript.txt -d 10

注意:Linux 可执行文件 scriptscriptreplay 默认情况下是预安装的,因此无需单独进行安装。如果您确实需要安装它们,请使用以下与您的操作系统相对应的命令:

Ubuntu 16 和 Ubuntu 18:

sudo apt install bsdutils

RHEL 6:

sudo yum install util-linux-ng

RHEL 7、Amazon Linux 1 和 Amazon Linux 2:

sudo yum install util-linux

这篇文章对您有帮助吗?


您是否需要账单或技术支持?