当你在终端或操控台上作业时,你或许想记载下自己做了些什么。这种记载能够看成是保存了终端痕迹的文档。假定你跟一些Linux管理员一起在体系上干活。或者说你让别人长途到你的服务器。你就会想记载下终端发生过什么。要完成它,你能够运用script指令。
script是啥
script是将终端会话制成打印稿的指令。关于想重现终端输入输出前史的人来说,非常管用。并且,这些记载还能被保存或打印。
怎么运用它
一般地,咱们能够经过在终端上敲入script来发动它。
pungki@dev-machine:~$ script
Script started, file is typescript
pungki@dev-machine:~$
还能够指定一个方针文件来保存打印稿的成果。
当你再次收到一条指令提示,就阐明终端上呈现的任何东西,都将被记载下来。
不指定文件的话,你会看到在当时目录,有了一个叫“typescript”的文件。
为什么要用它
就像之前说到的,script的主要功能是记载全部。以下是两个展现其用处的示例场景。
与搭档协作
当与搭档协同作业时,咱们能够运用script来记载自己的活动。
假定咱们将运用一个叫collaborate的打印稿文件。像这样的话就输入:
接着,在干了一下作业之后,假定你想将你个作业交接给另一个工程师,那就发送那个文件吧。当他想回忆你做的事,只需翻开那个文件便可。
假如他想在那个文件的基础上追加记载,能够运用-a选项。
记载别人活动
你能够让你的工程师或其他什么人长途登入到你的体系。为了承认他们做对了没,你能够记载下他们做了什么。想要script在登录时就收效,咱们能够将其加在shell profile。假如你在运用bash,讲一下几行放进profile去吧。
$ vi ~/.profile
# run the script command to record everything
# use -q for quite and -a option to append the script
#
/usr/bin/script -qa /usr/local/script/log_record_script
然后保存。下次他再登录的时分,script就会主动运转并将记载追加在/usr/local/script/log_record_script
选项-q是安静形式。用户登录时彻底不会发觉到script指令的运转。而选项-a是追加,不会掩盖以往的记载。
假如不必-q,用户登录时就会因如下画面而发觉script的存在。
中止记载
敲击ctrl+d或exit,能够中止记载。你会发现写入记载是发生在中止之后的。
定论
script指令关于记载终端前史仍是挺有用的。将记载保存在文本文件,这样能够很方便地用任何文本编辑器翻开。平常,咱们能够运用man script或script -h来更深地发掘它。