Linux 控制台中出現奇怪的字符

Linux 控制台中出現奇怪的字符

我不知道我是如何做到這一點的,但是當我現在調用一些命令(如 manmanless)時,我在螢幕上看到奇怪的 ESC[1 字元。它看起來像這樣:

在此輸入影像描述

有趣的部分是其他命令(如more)可以正確顯示控制台文字。這種行為可能是什麼情況?

注意:我可能可以透過重新啟動來解決此問題,但我處於安裝作業系統的 chroot 環境中,我希望避免任何重新啟動。另外,我只是好奇,到底發生了什麼事。

答案1

也許您的 TERM 設定是錯誤的。

像「ESC [ 1 m」這樣的字元序列是 ANSI 序列,它使終端/控制台以粗體或各種顏色顯示文字。

程式例如man使用您的 TERM 設定將手冊頁從來源格式(我認為是 troff)轉換為您的終端/控制台可以顯示的內容。

答案2

這是 LESS 環境變數被重置。

在應用修復之前,根本不存在 LESS 環境變數。

應用修復後(運行 env-update 和來源 /etc/profile),LESS 值為“-R -M --shift 5”

-R --raw-control-chars - output "raw" control characters.

相關內容