本文由Suzzz原创,发布于 http://www.cnblogs.com/Suzzz/p/4107700.html ,转载请保留此声明。

有时候可能想要记录在终端的所有操作包括输出等,将来作为视频播放。系统管理员可能需要记录某些用户的操作。另外可能有时需要向人实时演示一些操作流程。 这些都可以通过script来实现。

script简介

script命令用来将终端会话保存。用法如下

Usage:
script [options] [file] Options:
-a, --append append the output
-c, --command <command> run command rather than interactive shell
-r, --return return exit code of the child process
-f, --flush run flush after each write
--force use output file even when it is a link
-q, --quiet be quiet
-t, --timing[=<file>] output timing data to stderr (or to FILE)
-V, --version output version information and exit
-h, --help display this help and exit

常用的有

-a  指定输出附加到一个文件中,不会覆盖,这样可以一直使用同一个文件

-t   用来输出时间信息,回放的时候用到

-q   不显示script启动和exit的命令,这样用户可以完全察觉不到在录屏

-f   每次操作后都立即刷新缓存。 如果不设置这个选项,则不会实时写入文件。

用法示例

记录

提示script启动,并且记录到指定文件中。 如果这个文件已存在,希望追加记录,加上 -a  选项

使用Ctrl + D 后者 exit退出记录

如果想要同时输出时间文件

script -t timingfile -a scriptfile

回放

需要 scriptreplay 这个命令

scriptreply timingfile scriptfile

效果就和视频录制的差不多

自动记录用户活动

可以在用户的 .profile中添加上

/usr/bin/script -qa  logfile

下次用户登陆,script就会自动保存到 logfile

-q 是为了不显示 “ Script started...."这样的提示文本,从而使用户完全察觉不到script的存在。

向多个用户广播自己的终端操作

操作这本身在终端中建立一个 fifo 文件(关于fifo和mkfifo,可以放狗搜一下),用于通信

$ mkfifo PATH/testfifo

其他多个用户查看这个文件

$ cat PATH/testfifo

操作者开始用script记录自己的操作,并实时保存到 testfifo 中

script -f PATH/testfifo

记得最开始讲的 -f 作用吧? 让script实时写到文件中

这样,其他用户就可以看到操作者的演示了。

Linux终端录屏与播放 script 命令的更多相关文章

  1. linux下录屏和回放工具script和scriptreplay

    读书是一个长见识的过程,以前偶尔会用到录屏的工具,很少用想系统的学习一下.最近看了linux shell脚本攻略,发现很多新东西是以前自己没有接触到的.比如,这个非常好用的录屏工具:script,这次 ...

  2. linux中录屏工具byzanz

    linux中录屏工具byzanz: 1.安装 sudo apt install byzanz 2.使用 help:byzanz-record --help 配合xwininfo使用--xwininfo ...

  3. Linux下录屏

    我喜欢的: Gnome系用户,按ctrl+shift+alt+r,屏幕右上角有红点出现,开始录屏,结束的话再按一次ctrl+shift+alt+r,录好的视频在 ~/Videos下 ffmpeg # ...

  4. linux 终端分屏命令

    比如:某文件夹下有文件:vector.cc, substr.cc 1.使用vim命令打开任意一个文件:vim vector.cc打开第一个文件.如下图所示: 2.按:"Esc"键 ...

  5. linux 终端分屏命令vsp(转)

    比如:某文件夹下有文件:vector.cc, substr.cc 1.使用vim命令打开任意一个文件:vim vector.cc打开第一个文件.如下图所示: 2.按:"Esc"键 ...

  6. 自制Linux 终端 锁屏防窃助手

    很多时候我们不能一直守护在自己的电脑旁边,而且有些文件并不想让别人知道.那么这时候来个锁屏,是再合适不过的了.今天分享一个自制的锁屏工具,如下. 准备 操作系统 : 我这里是ElementaryOS虚 ...

  7. 切换Python环境 linux终端命令行

    切换Python环境 conda info -e // 查看有什么环境 source activate env //切换环境 linux终端分屏 terminator  https://www.jia ...

  8. Linux 终端下的颜色

    Linux 终端下颜色的输出 在命令行下也能产生五颜六色的字体和图案,只需要加上一些颜色代码,例如 echo -e "\033[41;36m 红底绿字\033[0m" 其中41的位 ...

  9. Unity 利用FFmpeg实现录屏、直播推流、音频视频格式转换、剪裁等功能

    目录 一.FFmpeg简介. 二.FFmpeg常用参数及命令. 三.FFmpeg在Unity 3D中的使用. 1.FFmpeg 录屏. 2.FFmpeg 推流. 3.FFmpeg 其他功能简述. 一. ...

随机推荐

  1. Linux sh远程连接失败 sshd.service启动失败

    今天不小心在本机的虚拟机执行了 chmod -R 777 /var 导致/var目录下所有权限全部是777 其中 /var/empty/sshd目录权限必须是744,却被改成了777,致使sh远程连接 ...

  2. 20145230《java程序设计》第6周学习总结

    20145230 <Java程序设计>第6周学习总结 教材学习内容 串流设计的概念 Java将输入/输出抽象化为串流,数据有来源及目的地,衔接两者的是串流对象.如果要将数据从来源取出,可以 ...

  3. 关于在windows命令提示符cmd下运行Java程序的问题

    1. win+R出现cmd运行窗口,输入Java源码文件名运行时,错误: 找不到或无法加载主类... 问题背景:我已经配置好了Java环境(安装路径PATH,JAVA_HOME已装好,cmd运行jav ...

  4. zookeeper分布式锁的问题

    分布式锁的流程: 在zookeeper指定节点(locks)下创建临时顺序节点node_n 获取locks下所有子节点children 对子节点按节点自增序号从小到大排序 判断本节点是不是第一个子节点 ...

  5. 多校HDU5723 最小生成树+dfs回溯

    Abandoned country Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...

  6. HDFS-文件写入API

    package com.zhen.hdfs; import java.io.BufferedInputStream; import java.io.FileInputStream; import ja ...

  7. 使用log4j2打印Log,log4j不能打印日志信息,log4j2不能打印日志信息,log4j和logj2,idea控制台信息乱码(文末)

    说来惭愧,今天就写了个"hello world",了解了一下log4j的日志. 本来是想在控制台打印个log信息,也是遇到坎坷重重,开始也没去了解log4j就来使用,log4j配置 ...

  8. Codeforces Round #280 (Div. 2) A , B , C

    A. Vanya and Cubes time limit per test 1 second memory limit per test 256 megabytes input standard i ...

  9. 配置网卡为vlan trunk

    http://www.microhowto.info/tutorials/802.1q.html Configure an Ethernet interface as a VLAN trunk hos ...

  10. 执行安装redis报错undefined reference to `__sync_add_and_fetch_4'

    执行make命令时报错:   zmalloc.o: In function `zmalloc_used_memory': /var/lib/tcommsvr/redis-2.8.0-rc4/src/z ...