por*_*ton 1 less character-encoding
LC_ALL=ru_RU.CP1251 less ~/t/show_discounts.js
Run Code Online (Sandbox Code Playgroud)
显示无意义的字符,而不是显示该 CP1251 文件,因为它应该被查看。
如何less使用指定的编码很好地工作?
Debian Linux,Gnome 终端,系统配置为en_US.UTF-8.
运行less为
LC_ALL=ru_RU.CP1251 less file
Run Code Online (Sandbox Code Playgroud)
前提是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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
588 次 |
| 最近记录: |