|NO.Z.00047|——————————|LinuxShell|——|Linux&Shell$变量.V04|——|环境变量|ENV|修改默认提示符|

一、LANG语系变量:查看LANG支持的语系
### --- 查看LANG支持的语系
~~~     # LANG 变量定义了 Linux 系统的主语系环境,这个变量的默认值是:
~~~     这是因为我们 Linux 安装时,选择的是中文安装,所以默认的主语系变量是“zh_CN.UTF-8”。
~~~     那么 Linux 中到底支持多少语系呢?我们可以使用以下命令查询:

[root@localhost src]# echo $LANG
zh_CN.UTF-8
[root@localhost src]# locale -a | more
aa_DJ
aa_DJ.iso88591
aa_DJ.utf8
aa_ER
~~~     …省略部分输出…

二、统计LANG支持的语系数量

### --- 统计LANG支持的语系数量
~~~     查询支持的语系是在太多了,统计一下有多少个吧
~~~     我们支持这么多的语系,当前系统到底是什么语系呢?使用 locale 命令直接查询:

[root@localhost src]# locale -a | wc -l
735
[root@localhost src]# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

三、定义系统默认语系

### --- 定义系统默认语系
~~~     我们还要通过文件/etc/sysconfig/i18n 定义系统的默认语系,查看下这个文件的内容:
~~~     这又是当前系统语系,又是默认语系,有没有快晕倒的感觉。解释下吧,我们可以这样理解,
~~~     默认语系是下次重启之后系统所使用的语系,而当前系统语系是当前系统使用的语系。如果系统重启,
~~~     会从默认语系配置文件/etc/sysconfig/i18n 中读出语系,然后赋予变量 LANG 让这个语系生效。
~~~     也就是说,LANG 定义的语系只对当前系统生效,要想永久生效就要修改/etc/sysconfig/i18n 文件了。
~~~     说到这里,我们需要解释下 Linux 中文支持的问题。是不是我们只要定义了语系为中文语系,
~~~     如zh_CN.UTF-8 就可以正确显示中文了呢?这要分情况,如果我们是在图形界面中,
~~~     或者是使用远程连接工具(如 SecureCRT),只要正确设置了语系,那么是可以正确显示中文的。
~~~     当然远程连接工具也要配置正确的语系环境,具体配置方式可以参考 Linux 系统安装章节。
~~~     那么如果是纯字符界面(本地终端 tty1-tty6)是不能显示中文的,
~~~     因为 Linux 的纯字符界面时不能显示中文这么复杂的编码的。
~~~     如果我们非要在纯字符界面显示中文,那么只能安装中文插件,
~~~     如zhcon 等。我们举个例子吧:

[root@localhost src]# cat /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
四、举例说明
### --- 举例说明
~~~     我当前使用远程工具连接,只要语系正确,则可以正确显示中文

[root@localhost src]# echo $LANG
zh_CN.UTF-8
~~~     df 命令可以看到中文是正常的
~~~     但如果是纯字符界面呢?虽然我们是中文安装的,但纯字符界面的语系可是“en_US.UTF-8”,

[root@localhost src]# df
~~~     文件系统     1K-块        已用      可用 已用% 挂载点
/dev/sda3      19923216     1813532 17097616 10% /
tmpfs           312672      0 312672 0% /dev/shm
/dev/sda1       198337      26359 161738 15% /boot
五、那么我们更改下语系为中文,看看会出现什么情况吧:
### --- 那么我们更改下语系为中文,看看会出现什么情况吧:图 11-3 字符界面设置中文语系

~~~     如果我们非要在纯字符界面中设置中文语系,那么就会出现乱码。
~~~     怎么解决呢?安装 zhcon 中文插件吧,安装并不复杂,查询下安装说明应该可以轻松安装。

 

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

 

posted on   yanqi_vip  阅读(18)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示