Ubuntu 无法更改LC_CTYPE env变量,为什么?

Ubuntu 无法更改LC_CTYPE env变量,为什么?,ubuntu,utf-8,Ubuntu,Utf 8,在我的新Ubuntu 13.10上,我尝试在终端中将LC_CTYPE更改为zh_CN.UTF-8,但它不起作用。我的区域设置输出始终如下所示: dean@dean-ubuntu:~$ export LC_CTYPE="zh_CN.UTF-8" dean@dean-ubuntu:~$ locale LANG=en_US.UTF-8 LANGUAGE=en_US LC_CTYPE="en_US.UTF-8" LC_NUMERIC="en_US.UTF-8" LC_TIME="en_US.UTF-8"

在我的新Ubuntu 13.10上,我尝试在终端中将LC_CTYPE更改为zh_CN.UTF-8,但它不起作用。我的区域设置输出始终如下所示:

dean@dean-ubuntu:~$ export LC_CTYPE="zh_CN.UTF-8"
dean@dean-ubuntu:~$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US
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=en_US.UTF-8

有什么想法吗?

对我很有用。如果我将
$LC_CTYPE
设置为一个不存在的区域设置(
“ma_ma.utf9”
,Martian UTF-9),我会收到一些错误消息,但错误的区域设置名称仍然会显示在
locale
命令的输出中。我使用的是Ubuntu12.10(或多或少)。它以前在我的旧电脑上运行,现在仍然是Ubuntu13.10。但是我不能在我的新电脑上做同样的事情。如何找到真正的原因?它确实有效,但bash会给您一个警告,而且程序不能使用所选的区域设置。检查可用值的
localedef--list archive
;检查
manlocalegen
以创建更多选项。在Ubuntu上,将新条目添加到文件
/var/lib/locales/supported.d/local
并运行
localegen