Linux的script命令——隐藏在终端的记录器

当你在终端或控制台上工作时,你可能想记录下自己做了些什么。这种记录可以看成是保存了终端痕迹的文档。假设你跟一些Linux管理员同时在系统上干活。或者说你让别人远程到你的服务器。你就会想记录下终端发生过什么。要实现它,你可以使用script命令。

script是啥

script是将终端会话制成打印稿的命令。对于想重现终端输入输出历史的人来说,十分管用。而且,这些记录还能被保存或打印。

如何使用它

一般地,我们可以通过在终端上敲入script来启动它。

还可以指定一个目标文件来保存打印稿的结果。

start_script

当你再次收到一条命令提示,就说明终端上出现的任何东西,都将被记录下来。

不指定文件的话,你会看到在当前目录,有了一个叫“typescript”的文件。

为什么要用它

就像之前提到的,script的主要功能是记录一切。以下是两个展示其用途的示例场景。

与同事合作

当与同事协同工作时,我们可以使用script来记录自己的活动。

假设我们将使用一个叫collaborate的打印稿文件。像这样的话就输入:

collaborate

接着,在干了一下事情之后,假设你想将你个工作交接给另一个工程师,那就发送那个文件吧。当他想回顾你做的事,只需打开那个文件便可。

如果他想在那个文件的基础上追加记录,可以使用-a选项。

collaborate_append

记录他人活动

你可以让你的工程师或别的什么人远程登入到你的系统。为了确认他们做对了没,你可以记录下他们做了什么。想要script在登录时就生效,我们可以将其加在shell profile。如果你在使用bash,讲一下几行放进profile去吧。

然后保存。下次他再登录的时候,script就会自动运行并将记录追加在/usr/local/script/log_record_script

remote_script_quite

选项-q是安静模式。用户登录时完全不会察觉到script命令的运行。而选项-a是追加,不会覆盖以往的记录。

如果不用-q,用户登录时就会因如下画面而察觉script的存在。

remote_script

停止记录

敲击ctrl+d或exit,可以停止记录。你会发现写入记录是发生在停止之后的。

结论

script命令对于记录终端历史还是挺有用的。将记录保存在文本文件,这样可以很方便地用任何文本编辑器打开。平时,我们可以使用man script或script -h来更深地挖掘它。

1 收藏 1 评论

关于作者:unblock

简介还没来得及写 :) 个人主页 · 我的文章 · 1

相关文章

可能感兴趣的话题



直接登录
最新评论
跳到底部
返回顶部