收集云服务器优惠信息
记录云服务器使用心得

Linux新手教程:如何记录和重播Linux终端会话

在本文中,小编将简单介绍如何在Linux中使用script和scriptreplay命令,它们可以帮助您在给定会话期间记录命令及其在终端上打印的输出。

虽然history命令是一个很棒的命令行实用程序,可以帮助用户存储以前使用的命令,但它不存储命令的输出。因此,script命令可以派上用场,为你提供强大的功能,帮助你将终端上打印的所有内容记录到 log_file中。

如果你想从log_file中查看历史记录中命令的输出,可以稍后参考该文件。此外,你还可以通过使用计时信息来重播使用scriptreplay命令录制的命令。

如何在Linux中录制终端?

如果要在Linux中创建打字稿(终端会话的记录),可以使用script命令启动新的shell会话并将终端上显示的所有内容(包括输入和输出)记录到指定的文件名中:

script my_terminal_session.txt

运行脚本命令后,你将看到终端提示符,可以在其中运行各种命令,并且你的终端会话将记录到“ my_terminal_session.txt ”文件中。

现在尝试执行一些命令,让脚本记录终端上执行的命令。

cal
w
uptime
whoami
pwd

要停止录制,只需键入exit或按Ctrl+D即可。

exit
录制Linux终端

现在尝试查看日志文件“ my_terminal_session.txt ”以获取所有记录的命令,当你查看日志时,会发现该脚本还存储换行符和退格键。

vi my_terminal_session.txt

查看Linux终端录制

你可以使用-a选项附加日志文件或打字稿,保留先前的内容。

script -a my_terminal_session.txt
vi my_terminal_session.txt

要记录除交互式shell会话之外的单个命令的结果,请使用-c选项:

script -c 'hostname' script.log

如果你希望脚本以安script静模式运行,则可以使用-q选项,这样你不会看到显示脚本正在启动或退出的消息。

script -c 'who'  -q  script.log

要将计时信息设置为标准错误或文件,请使用--timing选项。当你想要重新显示存储在log_file中的输出时,计时信息非常有用。

让我们启动script并运行命令w、uptime和cal进行记录。

script --timing=time.txt script.log

你可以查看上面计时命令的script.log和time.txt文件。

vi script.log

现在查看time.txt文件。

vi time.txt

time.txt文件有两列,第一列显示自上次显示以来经过的时间,第二列显示本次显示的字符数。

使用手册页--help寻求更多选项和使用脚本命令行实用程序的帮助。

在Linux中重播录制的终端会话

scriptreplay命令有助于重播script命令记录的log_file中的信息。

计时信息由与script命令一起使用的-timing=file选项定义,本例文件是与script命令一起使用的script.log。

scriptreplay --timing=time.txt script.log

在Linux中回放上次执行的命令

当使用计时信息重放log_file时,记录的命令被运行并且它们的输出在原始输出被显示的同时被显示。

总结

script和scriptreplay这两个命令易于使用,当你需要多次运行同一批命令时,它会很有帮助。

它们对于管理只有命令行界面与系统交互的服务器有很大帮助。希望本文内容对大家有所帮助,有任何不懂的操作可以参考手册页内容。

赞(0)
网站声明:本文内容由趣云笔记原创,部分资源收集于网络,如有侵权请联系企鹅:2472781824删除。
文章名称:《Linux新手教程:如何记录和重播Linux终端会话》
文章链接:https://www.ecscoupon.com/4193.html
本站资源仅供个人学习交流,未经允许不得转载,更不允许用于商业用途。如需转载,请注明来源,感谢理解!