灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:1654回复:0

Linux下用命令行实现录像和广播教学功能

楼主#
更多 发布于:2012-12-20 15:55
Linux下用命令行实现录像和广播教学功能



Linux下用命令行实现录像(Recording and playback of terminal sessions)和广播教学功能.  

script和scriptreplay在绝大多数GNU/Linux发行版中都是可用的,script用于将屏幕会话记录到一个文件中,scriptreplay用于将记录的屏幕会话进行回放,下面我们来看具体是怎么样实现的:
 

我们可以这样开始来记录屏幕会话:

$ script -t 2> timing.log -a output.session

$ type commands;       #此时就像我们平时一样,该输入什么输入什么,就当什么也没有发生。

.....

.....

exit                  #可能会输入N多命令,你觉得只需要记录到这里了,那就输入exit来结束它。

说明:上面有两个配置文件(timing.log、output.session)作为参数传递给了script命令,其中timing.log文件用来存储每个命令运行的时间信息,output.session文件用来存储命令输出(实际上也就是屏幕输出)。-t 用于将时间数据dump to stderr,因此我们用2>将stderr重定向到timing.log,timing.log和output.session当然是可以自定义的。

在同一路径下,我们可以利用这两个文件来回放屏幕会话:

$ scriptreplay timing.log output.session

....

....          #此处就是需要输出的内容了。

很简单吧,另外我们只需要将这两个文件共享给别人,其它人就可以看这个“视频”了,当然不足之处是没有声音,但是有个相当大的好处,文件会相当小,适合在互联网上传输。

 

接下我们看怎么在命令行下实现实时广播,这种方法特适合教学,而且绝对的流畅。

首先打开两个terminals,terminal1和terminal2。

1、在terminal1上输入如下命令:

  $ mkfifo scriptfifo        #文件名可以自定义

2、在terminal2上输入如下命令:

  $ cat scriptfifo           #当然要找对路径
 

3、回到terminal1,然后输入如下命令:

  $ script -f scriptfifo

  $ type commands ;

  $  ......

  $  ......  #可能会输入N多命令,当你不需要广播时,输入exit然后回车。

这样,如果你的学生打开的是terminal2,他/她就可以实时地看到你(老师)是怎么样操作的了。

喜欢0 评分0
游客

返回顶部