没有垃圾字符的脚本命令

没有垃圾字符的脚本命令

我使用 Unixscript命令记录输出到终端的所有内容并将其放入日志文件中。但当我看到录制的文件时,它还包含垃圾字符。

那么如何在没有垃圾字符的情况下记录终端活动。

输出示例: 在此输入图像描述

我尝试过使用将文件转换为dos todosvim也尝试过使用dos2unix但它跳过文件dos2unix: Skipping binary file

答案1

不确定您是否能够轻松摆脱这些。从script手册页:

某些交互式命令(例如 vi(1))会在打字稿文件中创建垃圾。脚本最适合不操作屏幕的命令,结果旨在模拟硬拷贝终端。

您显示的上述输出是转义码,它们在终端中产生彩色输出,以及看起来有人在对拼写错误进行一些更正后按退格键的输出。

使用列

我确实在 SuperUser 上找到了这个,它使用col命令来清理输出:

$ col -bp typescript | less -R

如果这不起作用,你也可以尝试这个变体:

$ col -bp < typescript

命令行fu

我在上找到了这个解决方案命令行fu.com它同时使用 Perl 和 col。

$ cat typescript | perl -pe 's/\e([^\[\]]|\[.*?[a-zA-Z]|\].*?\a)//g' \
                 | col -b > typescript-processed

参考

相关内容