从 GNU Screen 的屏幕日志中删除转义字符。%n

从 GNU Screen 的屏幕日志中删除转义字符。%n

是否可以删除 GNU Screen 输出文件中的 ESC 序列?颜色、制表符和其他转义字符等内容会进入日志文件,变得难以解读。

我尝试过 Google 博士等方法,也阅读过手册,但还是没能找到任何合适的东西......

也许我忽略了一些东西?

答案1

尝试一下这个 Perl 魔法:

perl -ne 's/\x1b[[()=][;?0-9]*[0-9A-Za-z]?//g;s/\r//g;s/\007//g;print' < screenlog.0

答案2

还可以尝试 less 的 -r 或 -R 选项。

less -r screenlog.0

答案3

使用 ansifilter。

ansifilter screenlog.txt > screenlog.txt.clean

答案4

我使用该strings命令使屏幕日志可读。在 Debian 下,它是 binutils 包的一部分。

正如其手册页所述:

字符串 - 查找对象或其他二进制文件中的可打印字符串

相关内容