录制与回放终端会话

录制与回放终端会话    ==>script、scriptreplay  (制作“命令行技巧”视频教程)

— 将输入命令后发生的一切按照时间先后次序记录下来,然后再进行回放

优点:终端脚本文件仅仅是一个文本文件,其文件大小不过是KB级别,远远低于桌面环境视频占用的空间大小
------------------
格式:
script [-a] [-c COMMAND] [-f] [-q] [-t] [file]

-a      Append the output to “file” or “typescript”,retaining the prior con-  
             tents.(将输出添加到文件或打字文件中,记忆先前的内容)如没有改选项,则默认文件名为typescript

-t      Output timing data to standard error. (输出时序数据到标准错误输出,默认输出到屏幕上)
   This data contains two  fields, separated by a space. The first field  
   indicates how much time elapsed since the previous output. The second field indi-
             cates how many characters were output this time. This information
             can be used to replay typescripts with realistic typing and out-
             put delays.
   这个数据包含被空格分隔的两个字段。第一个字段指出自先前的输出之后花费了多长时间。第二个字段指出这次有多少个字符被输出。这个信息常被用作回放“打字文件”中的真实的键入和输出延迟
------------------------------
应用一:

1.1  开始录制终端会话:
$script -t 2> timing.log -a output.session
....
....
exit

注:两个配置文件被当做script命令的参数.其中一个文件(timing.log)用于<存储时序信息>,描述每一个命令在何时运行;
 另一个文件(output.session)用于<存储命令输出>
 -t 用于将时序数据导入stderr, 2>则用于将stderr重定向到timing.log
借助这两个文件,可以使用下面的方法回放命令执行过程:
$scriptreplay timing.log output.session       //回放会话

-------------------------------
        -f      Flush output after each write.(每次写入之后刷新输出)

应用二:

1.2  建立可在多个用户之间进行广播的视频会话

                 —适用于为计算机实验室或Internet上的用户群演示教程,节省带宽且提供实时体验
$mkfifo scriptfifo   //广播端:创建“命名管道”:mkfifo - make FIFOs (named pipes):用于实现进程间通信
                                  |(命令行的表示方法-管道):是将一个进程的标准输出重定向为另一个进程的标准输入

需要注意的是:是“标准输出”,而不是“标准错误输出”

示例对比:(验证标准输出)

cat /etc/passwd /etc/adf | grep root --color

cat /etc/passwd /etc/adf | grep cat --color
$cat scriptfifo    //实时播放,倾听会话:听众端  (因为是广播,只能听不能发)
$script -f scriptfifo   //广播端:开始会话,exit结束

-----------------------------

收获:

1) 掌握了script、scriptreplay的使用方法;

2)对shell的工作原理理解更加深刻;

3)认识到“进程间通信”,必须查找资料进一步学习“进程”的相关内容

4)"标准输出"和"标准输入"有着更多的内容在里面,需要拓展知识面

------------------------------

英语生词:

replay
英 [ri‘ple]
vt. 重放;重演;重新比赛
n. 重赛;重播;重演

retain [r‘ten]
vt. 保持;雇;记住

prior
 英 [‘pra]
adj. 优先的;事先的;在先的,在前的
adv. 在前,居先
 prior notice事先通知;预先通报

timing [‘tam]
n. 定时;调速;时间选择

v. 为…安排时间;测定…的时间

elapse [‘lps]
n. 流逝;时间的过去

vi. 消逝;时间过去

realistic [r‘lstk]
adj. 现实的;现实主义的;逼真的;实在论的

pipe [pap]
n. 管;烟斗;笛
vt. 用管道输送;尖声唱;用管乐器演奏
vi. 吹笛;尖叫

时间: 2024-08-04 14:10:15

录制与回放终端会话的相关文章

linux 录制并回放终端会话

发现一个比较好玩的命令,然后这块做一下记录 以下内容复制来源于 LINUX shell 脚本攻略第二版 当你需要为别人在终端上演示某些操作或是需要准备一个命令行教程时,通常得一边手动输入命令一边演示,或者也可以录制一段屏幕演示视频,然后再回放出来.其实也有其他的实现方法.利用script和scriptreplay命令,我们可以录制命令的次序以及时序,将相关数据记录在文本文件中.利用这些文件,其他人可以在终端上回放并查看命令的输出. script和scirptreplay命令在绝大多数GNU/Li

script,scriptreplay:录制并回放终端会话

可以通过录制终端会话来制作命令行教学视频教程,也可以与他人分享会话记录 开始录制,直到输入exit退出 #script -t 2> timing.log -a output.log #exit 参数解释: -t:用于将时序数据导入stderr 2>:用于将stderr重定向到日志文件timing.log -a:存储命令输出的信息 播放录像: #scriptreplay timing.log output.log

Linux Shell 录制并回放终端会话

当别人演示某些命令时,一时可能记不住,解决办法之一是把演示时的过程录制下来,视频当然最完美但是成本高.利用script和scriptrelay命令可以录制命令的次序和时序. 录制 script -t 2>timing.log -a output.session commands exit 解释 commands为自己的命令 script命令中-t参数表示将时序信息导入stderr.2>正好把stderr的信息重定向 script命令中-a参数表示把命令输出定向 exit用于结束录制 回放 sc

5.录制与回放终端会话.

开始录制会话终端: script -t 2> timing.log -a output.session type commands ........ ........ exit 其中timing.log 用于存储时序信息:output.session用于存储命令输出. -t 选项用于将时序导入error 2>则用于将stderr重定向到timing.log. 借助与timing.log和 output.session 可以用下面的方法回访命令执行的过程. scriptreplay timing

如何在 Linux 上录制你的终端操作

2016/07/21 ·  All · 1 评论·  Linux 分享到:4 JSP自定义标签 Python开发环境搭建 PHP实现文件上传与下载 PHP实现页面静态化 原文出处: Bill Toulas   译文出处:MikeCoder 录制一个终端操作可能是一个帮助他人学习 Linux .展示一系列正确命令行操作的和分享知识的通俗易懂方法.不管是出于什么目的,从终端复制粘贴文本需要重复很多次,而录制视频的过程也是相当麻烦,有时候还不能录制.在这次的文章中,我们将简单的了解一下以 gif 格式

linux常用命令之录制和回放

linux系统中的录制和回放功能可以很方便的做一个演示教程,主要命令:script和scriptreplay. 录制命令:script -t 2>aa.log  -a bb.session 命令解释:-t表示时序数据存放到aa.log   2>表示重定向      bb.session用来存放输入的命令 播放的命令:scriptreplay aa.log   bb.session 实时演示功能:mkfifo 1.在一台linux系统,开两个终端1和2 2.在1上,mkfifo scriptfi

利用未公开API获取终端会话闲置时间(Idle Time)和登入时间(Logon Time)

利用未公开API获取终端会话闲置时间(Idle Time)和登入时间(Logon Time)作者:Tuuzed(土仔)   发表于:2008年3月3日23:12:38 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明.http://www.cppblog.com/tuuzed/archive/2008/03/03/43631.html 可能很多人都知道NT系统的query user命令,命令返回“使用者名称 工作阶段名称 识别码 状态 闲置时间 登入时间”.如图

Android自动化测试之MonkeyRunner录制和回放脚本

Android自动化测试之MonkeyRunner录制和回放脚本(十一) 分类: 自动化测试 Android自动化 2013-02-22 10:57 7346人阅读 评论(2) 收藏 举报 androidAndroidANDROIDMonkeyRecordermonkeyrunnerMonkeyRunnerMonkeyrunner 对于MonkeyRunner,有些人可能会想,既然是Android自动化测试,离不开测试脚本,那么,我们可不可以录制测试脚本呢,答案是可以的. 我们先看看以下monk

IOS开发之小实例--创建一个简单的用于视频录制和回放的应用程序

前言:还是看了一下国外的入门IOS文章:<Create a Simple App for Video Recording and Playback>,主要涉及视频录制和回放的功能的基本实现. iOS的API用于记录和播放视频的对刚入门IOS的新人有点混乱,因为有几个可用的选项.如果你只是想打一个视频,你可以用MediaPlayer的框架,它可以让我们发挥我们的设备本地存储的视频,或从远程位置.但是,如果你需要高级功能,如媒体资产管理,媒体编辑,跟踪管理,和其他人,你必须使用AVFoundati