Python实用宝典

我们在做机器学习/深度学习开发的时候,经常会产生如下所示的大量日志:

这些日志如果不保存,转瞬即逝,当我们想要回去翻看某一轮训练日志的时候,会很遗憾的发现找不到了。

现在有了这个 Asciinema 这个神器,我们不仅能找到并导出当时的终端日志,还能够“重播日志”并“分享日志”。非常牛逼:

Asciinema 是使用Python开发的工具,请按下面的流程安装并使用。

1.准备

开始之前,你要确保Python和pip已经成功安装在电脑上,如果没有,可以访问这篇文章:超详细Python安装指南 进行安装。

(可选1) 如果你用Python的目的是数据分析,可以直接安装Anaconda:Python数据分析与挖掘好帮手—Anaconda,它内置了Python和pip.

(可选2) 此外,推荐大家用VSCode编辑器,它有许多的优点:Python 编程的最好搭档—VSCode 详细指南。

请选择以下任一种方式输入命令安装依赖
1. Windows 环境 打开 Cmd (开始-运行-CMD)。
2. MacOS 环境 打开 Terminal (command+空格输入Terminal)。
3. 如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install asciinema

2.使用

终端输入如下命令,记录你的第一个终端日志:

asciinema rec first.cast

输入完成后会显示如下的提示:

(gs3_9) zjr@sgd-linux-1:~/cnn_test$ asciinema rec first.castasciinema: recording asciicast to first.cast
asciinema: press <ctrl-d> or type "exit" when you're done

意思就是日志会被保存在当前文件夹下的first.cast,如果你想结束录制,按 Ctrl + D 即可。

记录完毕后,以双倍速度重播该日志:

asciinema play -s 2 first.cast

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

asciinema play -i 2 first.cast

你也可以在启动终端日志录制时传递 -i 2 给 asciinema rec,将其永久设置在录制中:

asciinema rec first.cast -i 2

空闲时间的限制使录制更有趣。试试吧。

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

asciinema upload first.cast

这个命令会将日志记录上传到 asciinema.org,此外,它会打印一个秘密链接,你可以使用该链接在网络浏览器中观看你录制的终端日志:

你可以通过省略文件名一步录制和上传终端的日志:

asciinema rec

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

3.播放日志

查看日志有四种方式,最普通的是通过本地文件进行终端重播:

asciinema play /path/to/asciicast.cast

以下键盘快捷键可用:

  • Space- 暂停,

  • .- 按帧步进(暂停时),

  • Ctrl+C- 退出

第二种方式是通过url播放:

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

这个方式需要你的日志已经上传到asciinema.org中。

第三种方式是通过你自己生成的html页面访问(需要<link rel="alternate" type="application/x-asciicast" href="/my/ascii.cast">在页面的 HTML 中):

asciinema play http://your_html_path/post.html

第四种方式是通过标准输入输出播放:

cat /path/to/asciicast.cast | asciinema play -
# ssh user@host cat asciicast.cast | asciinema play -

可用选项:

  • -i, --idle-time-limit=<sec>- 将重播的终端空闲不动时间闲置为最大<sec>秒数

  • -s, --speed=<factor>- 播放速度

4.导出日志

导出终端日志到文本文件非常简单:

asciinema cat existing.cast > terminal_output.txt

所有的终端日志都会被导出到 terminal_output.txt 中,非常方便好用。

-------- End --------

Asciinema - 终端日志记录神器,机器学习开发者的福音相关推荐

  1. asciinema终端录屏神器使用及过坑

    在github上接触到asciinema,一个强大的神器. 它能够在linux等终端上进行录屏,并且录屏不生成视频文件,而是生成文字形式! 另外,它还能够将录制的结果上传到asciinema.org中 ...

  2. Asciinema终端SSH录屏神器使用

    参考文献:https://yq.aliyun.com/articles/625453(asciinema终端录屏神器使用及过坑) 参考文献:https://zhuanlan.zhihu.com/p/2 ...

  3. linux能记录日志的终端,如何记录Linux终端下的操作日志

    在Linux终端下,为方便检查操作中可能出现的错误,以及避免屏幕滚屏的限制,我们可以把操作日志记录下来.常用的工具有 screen,script,以及tee等. 1. screen - screen ...

  4. 基于.NetCore3.1系列 —— 日志记录之初识Serilog

    前言 对内置日志系统的整体实现进行了介绍之后,可以通过使用内置记录器来实现日志的输出路径.而在实际项目开发中,使用第三方日志框架(如:Log4Net.NLog.Loggr.Serilog.Sentry ...

  5. Logging——Python 的日志记录工具

    Logging--Python 的日志记录工具 1.定义 2.简单使用 3.简单配置 3.1 日志级别 3.2 简单配置 4.基础类和函数 4.1 Logger记录器 4.2 Handler 处理器 ...

  6. 日志记录组件[Log4net]详细介绍(转)

    一 Log4net简介 Log4net是基于.net开发的一款非常著名的记录日志开源组件.他最早是2001年7月由NeoWorks Limited启动的项目,基本的框架源于另外的一个非常著名的姐妹组件 ...

  7. crontab 各参数详解及如何查看日志记录

    crontab各参数说明: crontab [-u user] [file] crontab [-u user] [-e|-l|-r] crontab -l -u root 查看root用户的任务表 ...

  8. 机器学习开发者的现代化路径:不需要从统计学微积分开始

    时间:2015-08-27 01:23 作者:Jason Brownlee [编者按]机器学习算法的传统学习路径,是从统计学.概率论.线性代数.微积分等多种数学知识开始,但专业程序员.机器学习爱好者. ...

  9. 从零开始编写自己的C#框架(20)——框架异常处理及日志记录

    最近很忙,杂事也多,所以开发本框架也是断断续续的,终于在前两天将前面设定的功能都基本完成了,剩下一些小功能遗漏的以后发现再补上.接下来的章节主要都是讲解在本框架的基础上进行开发的小巧. 本框架主要有四 ...

最新文章

  1. python从入门到精通书-Python从入门到精通,跟着《这本书》学就够了?
  2. Codeforces #499 E Border ( 裴蜀定理 )
  3. mysql 导入主键冲突_MySQL 处理插入过程中的主键唯一键重复值的解决方法
  4. 下图为双总线结构机器的数据通路_PDPS机器人虚拟调试 弧焊仿真 第一课 弧焊项目创建...
  5. 【ES6(2015)】Function函数
  6. 直播丨云原生数据库PolarDB年度发布
  7. 【Python】Python运算符
  8. 图像算法八:【图像分割】边缘检测(Roberts,Sobel,canny)、霍夫变换(hough)、阈值分割、区域分割
  9. 苹果十年,焦虑在哪?
  10. Visio常用快捷键
  11. Xshell 5 免费版本安装过程
  12. QTcpServer. QTcpSocket. QUdpSocket之间的区别
  13. 问题记录:net::ERR_CERT_DATE_INVALID
  14. 我们真的需要智能路由器?
  15. postgresql - SQL查询某一天内的记录
  16. 【Android开发】计算机网络基础知识点,如何完成网络请求过程?
  17. Qt编写数据可视化大屏界面电子看板10-改造QCustomPlot
  18. Python 猴子选大王(约瑟夫环)算法
  19. NumPy的矩阵表示方法
  20. wmi 计算机应用程序,WMI 提供程序宿主程序 (Wmiprvse.exe) 已安装 NLB 功能的基于 Windows Server 2008 的计算机上可能会崩溃...

热门文章

  1. java发出声音_Java播放声音的几种方式
  2. android涟漪动画,如何添加涟漪效果并在android中的按钮上有自定义背景?
  3. shell if语句和test命令
  4. 抖音微信登录服务器繁忙,微信登录抖音失败解决方法介绍
  5. 【英语】大学英语CET考试,口语部分1(考试介绍与备考,讲义笔记)
  6. 解决cannot find module providing package或cannot find main module
  7. 想找Java项目练手,却不知道从哪找?
  8. 【源码分享】一键打开禅意生活——电子木鱼微信小程序源码分享
  9. mysql分组取最新一条数据
  10. 网络安全学习记录-10