Character-Encoding

如何讓less理解程式碼頁?

  • February 22, 2018
LC_ALL=ru_RU.CP1251 less ~/t/show_discounts.js

顯示無意義的字元,而不是顯示應查看的此 CP1251 文件。

如何less使用指定的編碼很好地工作?

Debian Linux,Gnome 終端,系統配置為en_US.UTF-8.

執行less方式

LC_ALL=ru_RU.CP1251 less file

前提是ru_RU.CP1251您的系統上存在語言環境(查看是否LC_ALL=ru_RU.CP1251 locale charmap返回 CP1252)告訴less您在該語言環境中,這意味著file在該字元集中編碼並且終端使用該字元集。

如果終端仿真器是在字元集為 UTF-8 的語言環境中啟動的,它將期望使用 UTF-8 編碼的字元,因此不知道如何處理那些拋出的 CP1251 編碼字元less

您還需要在該語言環境中啟動終端模擬器,或者您可以使用它luit來進行翻譯(假設終端的字元集是 UTF-8)。

或者您可以使用iconv將文件轉換為終端的語言環境字元集:

iconv -f CP1251 < file | less

引用自:https://unix.stackexchange.com/questions/425908