asciinema让您轻松记录终端会话,并在终端和网页浏览器中重播它们。

安装最新版本:

sapt-get install asciinema

记录你的第一个终端视频:

asciinema rec first.cast

现在以倍速重播:

asciinema play -s  first.cast

或者正常速度,但空闲时间限制为2秒:

asciinema play -i  first.cast

您可以通过-i 2asciinema rec时,永久设置它的记录。空闲时间限制使得观看记录更有趣,尝试一下。

如果你想在网上观看和分享,请上传它:

asciinema upload first.cast

上面的代码将它上传到asciinema.org,这是一个默认的asciinema-server 实例,并打印一个秘密链接,您可以使用它来在Web浏览器中观看您的录制内容。

您可以通过省略文件名一步记录和上传:

asciinema rec

录制完成后,系统会要求您确认上传,因此未经您的同意,任何地方都不会发送任何内容。

这些都是基础知识,但还有更多可以做的事情。以下部分将更详细地介绍录制的安装,使用和托管。

用法:

rec [name]

记录终端回话命令。

通过运行asciinema rec [filename]你开始一个新的记录会话。

录制完成时,您退出壳(命中Ctrl+D或键入 exit)。

如果filename参数被忽略,那么(请求确认后)将生成的asciicast上传到 asciinema-server(默认为asciinema.org),在那里可以观看和共享。

如果filename给出了参数,那么生成的记录(称为 asciicast)将保存到本地文件中。它可以稍后重播asciinema play <filename>和/或上传到asciinema服务器asciinema upload <filename>

ASCIINEMA_REC=1被添加到记录的过程环境变量。这可以被shell的配置文件(.bashrc.zshrc)用来改变提示或者在shell被录制时播放声音。

可用选项:

  • --stdin - 启用标准输入(键盘)录制(请参阅下文)
  • --append - 追加到现有的录音
  • --raw - 保存原始STDOUT输出,无需定时信息或其他元数据
  • --overwrite - 覆盖已存在的记录
  • -c, --command=<command> - 指定要记录的命令,默认为$ SHELL
  • -e, --env=<var-names> - 要捕获的环境变量列表,默认为 SHELL,TERM
  • -t, --title=<title> - 指定asciicast的标题
  • -i, --idle-time-limit=<sec>- 将记录的终端非活动<sec>时间限制为最大秒数
  • -y, --yes - 对所有提示回答“是”(例如上传确认)
  • -q, --quiet - 保持安静,压制所有通知/警告(暗示-y)

Stdin录制允许捕获用户在当前录制的外壳中键入的所有字符。这可以被玩家(例如 asciinema-player)用来显示按下的按键。因为它基本上是一个键盘日志记录(作用于单个shell实例),所以默认情况下它是禁用的,并且必须通过--stdin选项明确启用 。

play <filename>

重放录制在终端asciicast。

该命令rec直接在终端中重播给定的asciicast(由命令记录)。

以下键盘快捷键可用:

  • Space - 切换暂停,
  • . - 逐步完成一帧录制(暂停时),
  • Ctrl+C - 出口。

从本地文件播放:

asciinema play /path/to/asciicast.cast

从HTTP(S)URL播放:

asciinema play https://asciinema.org/a/22124.cast
asciinema play http://example.com/demo.cast

可用选项:

-i, --idle-time-limit=<sec>- 将重播终端的不活动限制在最大<sec>秒数
-s, --speed=<factor> - 播放速度(可以是小数)

为了获得最佳的播放体验,建议asciinema play在尺寸不小于用于记录的终端中运行,因为对于新的终端尺寸,控制序列没有“转码”。

cat <filename>

将记录的全部shell命令输出打印到终端。

asciinema play <filename>使用保存在asciicast中的时间信息重播记录的会话时,立即asciinema cat <filename>将全部输出(包括所有转义序列)转储到终端。

asciinema cat existing.cast >output.txt把记录的shell命令输出到output.txt文件中

upload <filename>

上传记录的asciicast到asciinema.org网站。

该命令将asciicast(通过rec命令记录)上传到asciinema.org,在那里可以观看和共享。

asciinema rec demo.cast如果您想在asciinema.org发布之前查看一个asciicast,那么+ asciinema play demo.castasciinema upload demo.cast是一个很好的组合。

asciinema使用的更多相关文章

  1. Linux下终端录制工具-asciinema

    1. 官网 https://asciinema.org/ 2. 功能 录音 录制终端命令 上传到多种位置 3. 使用方法 sudo yum install asciinema # 安装 asciine ...

  2. Linux终端回话记录和回放工具 - asciinema使用总结

    目前linux终端回放工具常见的就是asciinema和script了, 这两种工具都有那种类似于视频回放的效果.虽然这样做的代价是录制过程中需要占用一定的cpu资源以及录制后可能会因为视频文件太大而 ...

  3. 初探asciinema

    在学习c++的时候想到so库注入到某些程序中,网上查了一些资料,发现了一些比较好玩的程序,分享一下. 主要可以对操作的进行视频回放,类似堡垒机的功能 安装: pip3 install asciinem ...

  4. linux 使用asciinema 进行命令行屏幕录制共享

    1. 安装 yum install asciinema 2. 使用 录制 asciinema rec filename(可选,方便进行后期的回放play) 同时生成一个url 地址方便传递 https ...

  5. Asciinema:你的所有操作都将被录制

    如何实现类似于Jumpserver koko一样的终端录制回放功能呢?本文介绍一个神器 asciinema 是一款开源免费的终端录制工具,它可以将命令行输入输出的任何内容加上时间保存在文件中,同时还提 ...

  6. Asciinema文章勘误及Web端使用介绍

    欠下的债迟早是要还的,查文档,重验证,出结果,不误导 文章勘误 在上一篇文章Asciinema:你的所有操作都将被录制中有两个地方表述有错误或瑕疵,这里更正一下 第一个地方为录制时的参数--stdin ...

  7. [TimLinux] asciinema Linux终端录制工具嵌入私有web中

    yum install asciinema https://github.com/asciinema/asciinema-player # 下载asciinema-player.css, asciin ...

  8. asciinema.org -Record Your Terminal Share it with no fuss

    紀錄 Terminal 下指令的過程 http://asciinema.org/

  9. Pyhton开源框架(加强版)

    info:Djangourl:https://www.oschina.net/p/djangodetail: Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 ...

随机推荐

  1. pat1082. Read Number in Chinese (25)

    1082. Read Number in Chinese (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yu ...

  2. 用Java 8 Lambda表达式实现设计模式:命令模式

    在这篇博客里,我将说明如何在使用 Java 8 Lambda表达式 的函数式编程方式 时实现 命令 设计模式 .命令模式的目标是将请求封装成一个对象,从对客户端的不同类型请求,例如队列或日志请求参数化 ...

  3. Mac 安装GTK

    Mac上配置GTK环境 安装command line工具, 如果安装了Xcode, 就直接跳过该步骤 安装Homebrew 使用brew install pkg-config 使用brew insta ...

  4. 如何解读IL代码

    如何解读IL代码 关于IL代码,我有将从三个方面去揭开它神秘的面纱.IL代码是什么?我们为什么要去读懂IL代码?我们如何去读懂IL代码?这三个问题的解答,将是我解读IL代码的整体思路. IL代码是什么 ...

  5. Java中的阻塞队列-LinkedBlockingQueue(二)

    原文地址:http://benjaminwhx.com/2018/05/11/%E3%80%90%E7%BB%86%E8%B0%88Java%E5%B9%B6%E5%8F%91%E3%80%91%E8 ...

  6. Swift UI开发初探 (转)

    原文地址:http://www.tairan.com/archives/6600 关于Swift语法,可以参考<Apple Swift编程语言入门教程> 效果如下: 开发环境 Xcode6 ...

  7. 最小白的webpack+react环境搭建

    本文也同步发表在我的公众号“我的天空” 从零开始,用最少的配置.最少的代码.最少的依赖来搭建一个最简单的webpack+react环境. 最近在玩webpack+react+移动端,那么第一步自然是搭 ...

  8. 解析UML的面向对象分析与设计

    经常听到有朋友抱怨,说学了UML不知该怎么用,或者画了UML却觉得没什么作用.其实,就UML本身来说,它只是一种交流工具,它作为一种标准化交流符号,在OOA&D过程中开发人员间甚至开发人员与客 ...

  9. 梦织未来Windows驱动编程 第03课 驱动的编程规范

    最近根据梦织未来论坛的驱动教程学习了一下Windows下的驱动编程,做个笔记备忘.这是第03课<驱动的编程规范>. 驱动部分包括基本的驱动卸载函数.驱动打开关闭读取写入操作最简单的分发例程 ...

  10. Selenium入门6 操作元素,获取元素属性

    取元素的text,属性get_attribute,标签名tag_name 操作元素:send_keys输入,click点击,submit提交,clear清除输入 状态判断:is_display,is_ ...