我不知道我到底是如何做到这一点的,但当我现在调用某些命令(如 manman
或less
)时,我在屏幕上看到奇怪的 ESC[1 字符。它看起来像这样:
有趣的是,其他命令(如more
)可以正确显示控制台文本。这种行为可能是什么情况?我该如何修复它?
注意:我可能可以通过重新启动来解决这个问题,但我在 chrooted 环境中安装操作系统,我宁愿避免任何重新启动。另外,我只是好奇发生了什么。
答案1
也许你的TERM设置错误。
像“ESC [ 1 m”这样的字符序列是 ANSI 序列,导致终端/控制台以粗体或各种颜色显示文本。
诸如使用您的 TERM 设置之类的程序man
将手册页从其源格式(我认为是 troff)转换为您的终端/控制台可以显示的内容。
答案2
这是被重置的 LESS 环境变量。
在应用修复之前,根本没有 LESS 环境变量。
应用修复后(运行 env-update 和 source /etc/profile),LESS 值为“-R -M --shift 5”
-R --raw-control-chars - output "raw" control characters.