Ubuntu设置locale |
您所在的位置:网站首页 › ubuntu修改语言命令 › Ubuntu设置locale |
在基于Ubuntu的Docker容器中操作代码时,发现在本机上显示正常的中文注释,在容器中都是乱码。查看locale,找到了原因: locale是Linux系统中多语言环境的接口,locale命令可以设置和显示程序运行的语言环境。在本例中,通过locale命令查看到的语言环境都是“POSIX”,显然无法支持中文显示。所以,接下来就需要寻找方法来设置可支持中文显示的语言环境。 locale的设置包括12个以LC_开头的变量,如上面截图中的LC_CTYPE~LC_IDENTIFICATION 12个变量。这12个变量分别代表: LC_CTYPE:语言符号及其分类,LC_NUMERIC:数字,LC_TIME:时间显示格式,LC_COLLATE:比较和排序习惯,LC_MONETARY:货币单位,LC_MESSAGES:信息,如提示信息、错误信息、状态信息、标题、标签、按钮和菜单等,LC_PAPER:默认纸张大小,LC_NAME:姓名书写方式,LC_ADDRESS:地址书写方式,LC_TELEPHONE:电话号码书写方式,LC_MEASUREMENT:度量衡表达方式, LC_IDENTIFICATION:locale对自身包含信息的概述。locale在Ubuntu系统中的默认存放位置为:/usr/share/i18n/locales。 locale的语法规则:_.,例如zh_CN.UTF-8中,zh表示中文,CN表示中国大陆,UTF-8表示字符集。 让我们来看一下容器中已有的字符集: 没有我们想要的中文字符集,所以接下来需要安装一下: apt-get -y install language-pack-zh-hans安装完成后,再次执行locale -a,发现已经多了两个中文字符集zh_CN.utf8和zh_SG.utf8 设置locale的方式有多种,我使用的是修改/etc/profile的方式。在/etc/profile的最下面添加如下两句: export LC_ALL=zh_CN.utf8 export LANG=zh_CN.utf8执行source /etc/profile 使其生效。然后,再次查看locale,已经发生了变化。
执行vim /etc/locale.gen,可以看到该文件的内容: 将需要的语言和字符集的注释打开,并执行locale-gen命令使其生效。 3. 命令行设置 localectl set-locale LANG=zh_CN.UTF-8 4. 修改/etc/default/locale文件注销重新登陆后生效。 5. 创建/etc/locale.conf文件通过vim /etc/locale.conf创建文件,并写入需要的语言选项,然后通过source /etc/locale.conf使其生效。 该方法未经验证,需要的同学可自行尝试。 完成locale的设置后,容器中的中文乱码问题得到解决。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |