linux没有i18n怎么永久修改字符集

linux没有i18n怎么永久修改字符集,第1张

LANG="zh_CN.UTF-8" 这一句就足够了 如果你是通过secureCRT的,你只需要修改secureCRT的外观里边的字符编码设置,改成UTF-8

如满意记得采纳,如果有其他问题也可点我名字向我求助

答题不易,

如果没有回答完全,请您谅解,

请采纳最快回答的正确答案!!谢谢!

1、查看现有语言环境:

locale

2、可用语言环境:

locale

-a

3、临时修改语言环境:

AIX:

export

LANG=en_US

export

LANG=zh_CN

Linux:

export

LANG=en_US.UTF-8

export

LANG=zh_CN.UTF-8

4、永久修改系统字符集

修改/etc/sysconfig/i18n

英文版系统:

LANG="en_US.UTF-8"

SYSFONT="latarcyrheb-sun16"

中文版系统:

LANG="zh_CN.UTF-8"

SYSFONT="latarcyrheb-sun16"

一次重启服务器后,supervisor接管的python脚本中的函数 open() 和 print() 都会报下面的编码错误:

UnicodeEncodeError: 'ascii' codec can't encode

使用的是python3,按理说编码都会默认utf-8,而且本地运行的python脚本并没有这个问题。

经大佬指点,增加环境变量 export LC_ALL="en_US.UTF-8" 后,再重启supervisor,问题解决

下面是复制的: https://www.cnblogs.com/badboy200800/p/11215981.html

Locale是一个软件在运行时的语言环境,。是根据计算机用户所使用的语言,所在国家或者地区,以及当地的文化传统所定义的。它包括语言(Language), 地域 (Territory) 和字符集(Codeset)。

一个locale的书写格式为: 语言[ 地域[.字符集]]。完全的locale表达方式是 [语言[ 地域][.字符集] [@修正值]。例如:

zh_CN.GB2312 => 中文_中华人民共和国+国标2312字符集。

(1)locale把按照所涉及到的文化传统的各个方面分成12个大类

(2)查看标准字符集列表

常用字符集:en_US.utf8、zh_CN.gb2312、zh_CN.gbk、zh_CN.utf8等

3.Locale的设定

LC_ALL和LANG优先级的关系:LC_ALL >LC_* >LANG

(1)如果需要一个纯中文的系统的话,设定LC_ALL= zh_CN.XXXX即可。或者设定LANG=zh_CN.XXXX也可以,但是LC_ 不要有任何特殊设定才可以(因为LC_ 优先级高)。

(2)如果需要个性化的环境,例如只想要一个可以输入中文的环境,而保持菜单、标题,系统信息等等为英文界面,那么只需要设定LANG=en_US.XXXX,然后 LC_CTYPE=zh_CN.XXXX就可以了。

(3)假如什么也不做的话,也就是LC_ALL,LANG和LC_*均不指定特定值的话,系统将采用POSIX作为lcoale,也就是C locale。

4.查看与设定字符集实践

(1)查看当前系统字符集三种方式(LC_ALL、LC_CTYPE和LANG),以查看LANG为例:

(2)更改系统字符集

备注:直接执行上述命令,可以临时修改系统字符集。如果写入环境变量可以永久改变字符集。

(3)取消当前系统字符集(设定为空)

备注:直接执行上述命令,可以临时修改系统字符集。如果写入环境变量可以永久改变字符集。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8488160.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-17
下一篇2023-04-17

发表评论

登录后才能评论

评论列表(0条)

    保存