设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客

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

2014-6-16 14:52| 发布者: joejoe0332| 查看: 8024| 评论: 1|原作者: unblock|来自: 伯乐在线

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

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


script是啥

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


如何使用它

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

1
2
3
pungki@dev-machine:~$ script
Script started, file is typescript
pungki@dev-machine:~$


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


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

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


为什么要用它

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


与同事合作

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

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

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

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



记录他人活动

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

1
2
3
4
5
6
$ 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来更深地挖掘它。


原文链接: linoxide   翻译: 伯乐在线 - unblock
译文链接: http://blog.jobbole.com/70563/


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部