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. pat1100. Mars Numbers (20)

    1100. Mars Numbers (20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue People o ...

  2. Quartz使用(3) - Quartz核心接口Trigger

    Trigger最常用的有两种SimpleTrigger和CronTrigger,首先介绍Trigger的一些基础的信息,然后会详细描述这两种Trigger. 1. 通用Trigger属性 quartz ...

  3. 开发安全的 API 所需要核对的清单

    开发安全的 API 所需要核对的清单 以下是当你在设计, 测试以及发布你的 API 的时候所需要核对的重要安全措施. 身份认证 不要使用 Basic Auth 使用标准的认证协议 (如 JWT, OA ...

  4. jq学习总结之方法

    三.方法 1.length 2.index()3.get() reverse()4.not()5.filter()6.find()7.each()8.addBack()9.attr()10.toggl ...

  5. WCF:无法满足对安全令牌的请求,因为身份验证失败。

    服务端和客户端如果有认证的话的这样: <wsHttpBinding> <binding name="WSHttpBinding_IService1" closeT ...

  6. Vue.js基础语法(三)

    vue学习的一系列,全部来自于表哥---表严肃,是我遇到过的讲课最通透,英文发音最好听的老师,想一起听课就去这里吧 https://biaoyansu.com/i/hzhj1206 1过滤器filte ...

  7. deployment删除后,副本集未删除,解决之道

    在删除的body上加上,body.setPropagationPolicy("Foreground");就可以删除deployment的同时连同副本集一同删除.

  8. 粗看ES6之JSON

    标签: es6 ES6新增JSON特性不是特别多,只是针对JSON某些情况下的写法上有一些优化: 当key值和value值对应变量名相同时 json对像中的方法书写 示例代码如下: <!DOCT ...

  9. 云集微助手安装教程和授权说明old

    安装教程 一 .手机越狱(如果已经越狱请跳过此步,直接进行第二步) 越狱教程:http://jailbreak.25pp.com/yueyu/ 二 .安装触动精灵(如果你已安装触动精灵最新版请跳过此步 ...

  10. 【起航计划 010】2015 起航计划 Android APIDemo的魔鬼步伐 09 App->Activity->Redirection 根据shared preferences是否有值决定是否redirect

    Redirection示例涉及到三个Acitivity: RedirectEnter, RedirectMain,RedirectGetter. 示例的主Activity为 RedirectEnter ...