学习啦 > 学习电脑 > 操作系统 > Linux教程 > linux的script命令

linux的script命令

时间: 佳洲1085 分享

linux的script命令

  script命令能够将终端的会话过程录制下来,下面由学习啦小编为大家整理了linux的script命令的相关知识,希望对大家有帮助!

  linux的script命令

  script 是一个神奇命令,script 能够将终端的会话过程录制下来,然后使用 scriptreplay 就可以将其录制的结果播放给他人观看。script 的好处就在于你在终端中的所有操作、敲过的命令和打印出的结果它都可以原原本本地进行录制。可以应用于教学、演示、审计。

  一般来说,script 和 scriptreplay 在 Linux 发行版中都有默认安装。

  script -t 2>demo.time -a demo.his            开始录像,ctrl+d或者exit结束

  scriptreplay demo.time demo.his            回放

  两个配置文件被当做script命令的参数。这两个文件可以随便命名,这里用demo.time和demo.his。其中demo.time用于存储时序信息,描述每一个指令在何时运行;demo.his用于存储命令信息输出。-t选项用于将时序数据导入stderr。2>用于stderr重定向到demo.time。

  参数:

  -t 指明输出录制的时间数据

  -f 如果需要在输出到日志文件的同时,也可以查看日志文件的内容,可以使用 -f 参数。PS:可以用于教学,两个命令行接-f可以实时演示

  -a 输出录制的文件,在现有内容上追加新的内容

  -q 可以使script命令以静默模式运行

  利用script记录某人行为

  vi ~/.profile

  script -t -f -q 2>$USER.time -a $USER.his

  linux的scripy命令应用

  1、演示教学

  第一个命令框

  script -f demo

  其他命令框

  scriptreplay -f demo

  可以实现实时同步演示

  2、服务器安全审计

  直接操作线上的服务器有很大隐患,所以一般都是通过登录跳板机,然后连接线上服务器,跳板机可以访问控制和安全审计,查看记录每个人对线上服务器的操作

  用户家目录下,修改环境变量,使得用户登录就会触发录像

  vi ~/.profile

  script -t -f -q 2>/wow/$USER-$UID-`date +%Y%m%d%H%M%S`.time -a /wow/$USER-$UID-`date +%Y%m%d%H%M%S`.his

  这样搞完后,发现有一个问题是每次退出,我习惯Ctrl+D,然后按第一遍停止录像,第二遍才能用户退出,如何解决在后面添加

  if [ "$SHLVL" = 1 ]; then

  exit

  fi

  这样就可以一遍Ctrl+D停止录像和退出用户。

  必须得时许信息在前,命令信息在后。

3631993