如何在Ubuntu 12.04中更改Locale Lang设置

locale命令应该是。 LANG =的en_US.UTF-8。

我的设置是。

locale LANG=en_AU.UTF-8 LANGUAGE=en_AU:en LC_CTYPE="C" LC_NUMERIC="C" LC_TIME="C" LC_COLLATE="C" LC_MONETARY="C" LC_MESSAGES="C" LC_PAPER="C" LC_NAME="C" LC_ADDRESS="C" LC_TELEPHONE="C" LC_MEASUREMENT="C" LC_IDENTIFICATION="C" LC_ALL=C 

本地文件配置

  cat /etc/default/locale : LANG="en_US.UTF-8" LANGUAGE="en_US:en" cat /etc/locale.conf LANG="en_US.UTF-8" 

我已经做了什么。

 sudo locale-gen en_US.UTF-8 : Generating locales... en_US.UTF-8... up-to-date Generation complete. sudo dpkg-reconfigure locales Generating locales... en_IN.UTF-8... done en_US.UTF-8... up-to-date Generation complete. 

如果您需要任何东西,请告诉我。

我不确定/ etc / default / locale文件是默认还是自定义。

我只是添加到我的家庭档案。

gedit~ / .profile看起来像:

 LANG="en_US.UTF-8" LANGUAGE="en_US:en" 

注销+登录。一切都如预期。

某处(不知道在哪里)为LC_ALL环境变量赋值C 你需要摆脱那个任务。

https://help.ubuntu.com/community/EnvironmentVariables页面提到了一些通常用于持久设置环境变量的文件。

HTH

根据这个有用的链接 :

每个LC_ *和LANG变量都可以包含以下forms的语言环境名称:

 language[_territory[.codeset]][@modifier] 

其中语言是ISO 639语言代码(小写),领域是ISO 3166国家代码(大写),代码集表示字符集,修饰符代表其他特定属性(例如表示特定语言方言,或非标准语言)正字)。

为了解决这个似乎是一个bug的问题,请尝试:

  sudo localedef -v -c -i en_US -f UTF-8 en_US.UTF-8 

它应该编译locale和C库的文件。