Linux 为什么在locale命令的输出中有许多utf8?

Linux 为什么在locale命令的输出中有许多utf8?,linux,utf-8,Linux,Utf 8,当我在我的ubuntu机器上执行locale命令时,我得到: C.UTF-8 en_AG en_AG.utf8 en_AU.utf8 en_BW.utf8 en_CA.utf8 en_DK.utf8 en_GB.utf8 en_HK.utf8 en_IE.utf8 ... 为什么有这么多utf8? Wiki说“UTF-8是一种可变宽度编码,可以表示Unicode字符集中的每个字符”。那么为什么语言环境会给出不同的utf8呢? 彼此之间有什么不同 谢谢语言环境不仅仅是一种编码 地区根据您的语言

当我在我的ubuntu机器上执行locale命令时,我得到:

C.UTF-8
en_AG
en_AG.utf8
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8

...
为什么有这么多utf8? Wiki说“UTF-8是一种可变宽度编码,可以表示Unicode字符集中的每个字符”。那么为什么语言环境会给出不同的utf8呢? 彼此之间有什么不同


谢谢

语言环境不仅仅是一种编码

地区根据您的语言和国家/地区自定义程序

区域设置,例如日期和时间格式,以及语言、排序顺序等,在名为locale的文件中指定。区域设置包含指定日期和时间格式以及其他设置的规则


区域设置要多得多。每个条目都是基于UTF-8的区域设置,具有更多参数:数字格式(
1234567
vs
1.234.567
vs
1234567
)、货币符号、日期格式、srt顺序和文本数据的其他本地约定。几乎所有人都使用相同的编码,即UTF-8。

我选择最快的。谢谢大家@卡米诺:我不是跑得最快的:谢谢。埃里克首先得到了一个基本答案,并在随后的编辑中完成了。我没有注意到,我给了埃里克一个额外的分数:)再次感谢!