centos 语言环境 utf-8

Rob*_*rto 0 centos unicode locale

这是我的 linux 盒子:

  • CentOS Linux 6.0 版(最终版)
  • x86_64

使用文本编辑器(vi 或 pico...)我看到带重音字母的奇怪字符(è、ì、à、ù)

这是我的语言环境:

LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
Run Code Online (Sandbox Code Playgroud)

如果我切换到iso-8859-9这样:

export LANG="en_US.ISO-8859-1"
Run Code Online (Sandbox Code Playgroud)

我正确地看到了字符,但我必须在此服务器上使用 utf-8。

任何的想法?

Gil*_*il' 6

你的描述含糊不清。您的终端不支持 Unicode,或者您正在编辑 latin1 (= iso-8859-1) 中的文件。

在 bash 或 zsh shell 上,使用LC_CTYPE=en_US.UTF-8, 运行echo $'\xc3a9'. 如果您看到é,则您的终端支持 UTF-8。如果您看到é,则您的终端显示 latin1。

如果您的终端不支持 UTF-8,您需要获得一个支持。或者,可能,配置你的,以便它这样做。

如果您确定您的终端支持 UTF-8,但是é当您显示包含 的文件时看到诸如此类的内容é,那么问题在于您的文件是以 latin1 编码的。将它们重新编码为 UTF-8