Ubuntu 错误地显示泰语文件名。
$ locale
LANG=th_TH.UTF-8
LANGUAGE=
LC_CTYPE="th_TH.UTF-8"
LC_NUMERIC="th_TH.UTF-8"
LC_TIME="th_TH.UTF-8"
LC_COLLATE="th_TH.UTF-8"
LC_MONETARY="th_TH.UTF-8"
LC_MESSAGES="th_TH.UTF-8"
LC_PAPER="th_TH.UTF-8"
LC_NAME="th_TH.UTF-8"
LC_ADDRESS="th_TH.UTF-8"
LC_TELEPHONE="th_TH.UTF-8"
LC_MEASUREMENT="th_TH.UTF-8"
LC_IDENTIFICATION="th_TH.UTF-8"
LC_ALL=
$ locale -a
C
C.UTF-8
en_US.utf8
POSIX
th_TH.utf8
答案1
- 正如其中之一所建议的那样这个问题的回答:
在支持 UTF-8 的终端仿真器中,您可以使用 luit 命令以不同的语言环境运行子 shell(或其他程序)。指示字符集的语言环境设置是 LC_CTYPE。
LC_CTYPE=ru_RU.KOI8-R luit ls # run one command LC_CTYPE=ru_RU.KOI8-R luit # start a shell (type Ctrl+D or exit to return to the parent shell)
您可以尝试设置您的腻子的会话:
PuTTY Configuration Session Window Translation Remote character set: UTF-8
这个答案建议改变
Connection
>Data
>而Terminal-type string
不是putty
xterm
。建议更改您的语言环境在本指南中:
sudo update-locale LANG=<name of locale here> user@ubuntu:~/ $ cat /etc/default/locale LANG=en_US.UTF-8 user@ubuntu:~/ $ sudo update-locale LANG=uk_UA.utf8 [sudo] password for user: user@ubuntu:~/ $ cat /etc/default/locale LANG=uk_UA.utf8
在你的情况下你可以使用th_TH.UTF-8
xterm
在我的例子中,即使使用参数,putty 也能正确显示泰语编码Terminal-type string
:
Windows 中的区域设置:
非 Unicode 程序的当前语言:英语(美国)
- 尝试 putty 的备择方案。
更新:我们尝试创建一个以泰语编码命名的文件,并且它按预期显示 - 以泰语编码。但是以泰语编码命名的旧文件显示不正确。因此我们认为问题可能出在 ftp 服务器如何处理泰语编码的文件上。
- 记下哪些程序或服务将更改写入磁盘,以及它如何使用您的编码对文件名称中的符号进行编码。