locale 命令

  locale 命令用以设置程序运行的语言环境。

  locale 设置语言环境的命名规则为 Language_area.charset,例如 en_US.utf8 表示语言为英语,地区为美国,字符集为 UTF-8。

  查看当前字符映射文件

$ locale charmap
UTF-8

  查看可用公共语言环境

$ locale -a
C
C.UTF-
en_AG
...

  查看可用字符映射文件

$ locale -a
C
C.UTF-
en_AG
...

设置默认编码

  编辑 ~/.bashrc,设置默认编码为 UTF-8:

export LC_ALL=en_US.utf8
export LANG=$LC_ALL

  环境变量 LANG 是 LC_* 的默认值,如果没有设置 LC_*,则使用该值。

  LC_ALL 是一个宏,如果设置该值,则会覆盖除 LANG 以外所有的 LC_* 值。

什么是字符集

  字符集就是字符的集合,是字符在计算机系统内的编码方式,也是所谓的内码。所有字符集都存放在 /usr/share/i18n/charmaps 目录下,并且全部使用 Unicode 编号进行索引。Unicode 采用统一的编号来索引当前已知的全部符号(包括人类语言符号、特殊标记符号等)。

  字符集就是以上所有符号的编码方式,用于网络传输、计算机内部通信。Unicode 的编号通常使用 "U+" 后面跟着一个十六进制数字来表示,不同的编程语言可能有稍微不同前缀的写法,但十六进制数字保持不变。Unicode 统一使用四个字节来存储每个字符,但不同的符号对字节的消耗量不同,例如英语字符和数字等字符只需要单个字节就可以存储,而 GB2312 所包含的字符全部都是使用双字节存储。因为 Unicode 的目标是给世界上每一个字符都编上索引号并收纳进去,作为当前世界最大而全的字符集它不得不牺牲简洁性,它所包含的字符大部分都不能作为常用字符或者不是最被通用的字符,而作为计算机世界使用最多的字符 ASCII 单字节字符集,只能表达英语世界的字符,为此又有了 UTF-8 这种既简洁,字符覆盖率又高的字符集,UTF-8 使用单字节表示拉丁字母与数字,两个字节表示常用符号(包括常用中文字符),三个字节表示不常用字符,四个字节表示奇葩字符,UTF-8 理论上最长可以使用六个字节来为字符编码,但为了向 Unicode 看齐,实际上最长四个字节。

[Linux] 修改系统默认编码的更多相关文章

  1. linux通过python设置系统默认编码

    import sys sys.reload() sys.getdefaultencoding() # 查看设置前系统默认编码 sys.setdefaultencoding('utf-8') sys.g ...

  2. linux上修改系统默认语言设置

    locale命令设置语言环境(临时修改) [keysystem@localhost ~]$ date Fri Feb :: CST [keysystem@localhost ~]$ locale LA ...

  3. Linux修改系统以及pip更新源

    Linux修改系统以及pip更新源 时间:2015-08-01来源:csdn 作者:henulwj 修改系统更新源 你是否跟我一样在刚看时接触Linux时被系统更新源问题搞得晕头转向,不同的Linux ...

  4. linux 关于Apache默认编码错误 导致网站乱码的解决方案

    Apache默认编码UTF-8在解析A网站的时候没有任何问题,当运行B网站时出现的"蝌蚪文"乱码问题   最近经常有同学在使用LAMP/WAMP时,遇到这样的编码错误问题: A网站 ...

  5. Linux - 修改系统的max open files、max user processes(附ulimit的使用方法)【转载】

    Linux - 修改系统的max open files.max user processes(附ulimit的使用方法)目录 1 问题说明2 修改max open files3 修改max user ...

  6. flash 读取系统默认编码

    java有类可以直接读取,但貌似flash没有. Charset.defaultCharset(); 但是浏览器里可以有. document.defaultCharset;//从当前的区域语言中获取默 ...

  7. 使用storyboard显示UITableView时,如果不修改系统默认生成的tableView:cellForRowAtIndexPath:方法中的代码,则必须为UITableViewCell注册(填写)重用标识符:identifier.必须要代码方法中的标识符一致.

    CHENYILONG Blog 使用storyboard显示UITableView时,如果不修改系统默认生成的tableView:cellForRowAtIndexPath:方法中的代码,则必须为UI ...

  8. php修改网站默认编码

    php修改网站默认编码网站如果header 不指定utf8默认 不是utf8 所以输入中文显示会乱码 一般都是apache不是不是utf8 打开 apache 配置文件 httpd.conf 加个 A ...

  9. RK3399 修改系统默认语言为简体中文

    CPU:RK3288 系统:Android 7.1 修改系统默认语言为简体中文 diff --git a/build/target/product/full_base.mk b/build/targe ...

随机推荐

  1. 碰到在Windows中访问局域网文件夹, 提示无法访问时的解决办法

    运行:gpedit.msc 找到下图的位置, 启用即可

  2. IBM Thread and Monitor Dump Analyzer for Java解决生产环境中的性能问题

    这个工具的使用和 HeapAnalyzer 一样,非常容易,同样提供了详细的 readme 文档,这里也简单举例如下: #/usr/java50/bin/java -Xmx1000m -jar jca ...

  3. 错误<BEA-101165> <Could not load user defined filter in web.xml

    <2017-7-4 上午10时13分33秒 CST> <Error> <HTTP> <BEA-101165> <Could not load us ...

  4. request.getParameter(“xxx”)的参数的取值

    request.getParameter(“xxx”)的参数的取值的几种可能: 1. Html中form表单中标签的name属性: <form name="form" met ...

  5. Cena评测系统在win10中测评cpp程序

    1.装了cena-0.8.1-20110710-setup.exe 2.打补丁:cena-0.8.2-patch.zip 3.菜单->工具->选项->编程语言   修改G++ (mi ...

  6. python3用BeautifulSoup抓取id='xiaodeng',且正则包含‘elsie’的标签

    # -*- coding:utf-8 -*- #python 2.7 #XiaoDeng #http://tieba.baidu.com/p/2460150866 #使用多个指定名字的参数可以同时过滤 ...

  7. scala sortBy and sortWith

    sortBy: sortBy[B](f: (A) ⇒ B)(implicit ord: math.Ordering[B]): List[A] 按照应用函数f之后产生的元素进行排序 sorted: so ...

  8. 2013-2015 Aaronyang的又一总结,牧童遥指纳尼村

    我没有时间去唠叨自己的事,可是你们是我喜欢的人,ay很愿意写给你们分享:去年的万人阅读的总结链接:<没学历的IT人生没那么悲催,献给程序员们> 提前声明:本文不良反应:请自备垃圾桶,准备装 ...

  9. .NET+MVC+ORACLE存储分页查询一前端实现

    MemberList.cshtml @{    ViewBag.Title = "用户列表";    Layout = null;} <!DOCTYPE html> & ...

  10. 4. Tensorflow的Estimator实践原理

    1. Tensorflow高效流水线Pipeline 2. Tensorflow的数据处理中的Dataset和Iterator 3. Tensorflow生成TFRecord 4. Tensorflo ...