[Linux] 修改系统默认编码
locale 命令
?
locale 命令用以設置程序運行的語言環(huán)境。
locale 設置語言環(huán)境的命名規(guī)則為 Language_area.charset,例如 en_US.utf8 表示語言為英語,地區(qū)為美國,字符集為 UTF-8。
?
查看當前字符映射文件
$ locale charmapUTF-8
?
查看可用公共語言環(huán)境
$ locale -a C C.UTF-8 en_AG ...?
查看可用字符映射文件
$ locale -a C C.UTF-8 en_AG ...?
設置默認編碼
?
編輯 ~/.bashrc,設置默認編碼為 UTF-8:
export LC_ALL=en_US.utf8 export LANG=$LC_ALL?
環(huán)境變量 LANG 是 LC_* 的默認值,如果沒有設置 LC_*,則使用該值。
LC_ALL 是一個宏,如果設置該值,則會覆蓋除 LANG 以外所有的 LC_* 值。
?
什么是字符集
?
字符集就是字符的集合,是字符在計算機系統(tǒng)內(nèi)的編碼方式,也是所謂的內(nèi)碼。所有字符集都存放在 /usr/share/i18n/charmaps 目錄下,并且全部使用 Unicode 編號進行索引。Unicode 采用統(tǒng)一的編號來索引當前已知的全部符號(包括人類語言符號、特殊標記符號等)。
字符集就是以上所有符號的編碼方式,用于網(wǎng)絡傳輸、計算機內(nèi)部通信。Unicode 的編號通常使用 "U+" 后面跟著一個十六進制數(shù)字來表示,不同的編程語言可能有稍微不同前綴的寫法,但十六進制數(shù)字保持不變。Unicode 統(tǒng)一使用四個字節(jié)來存儲每個字符,但不同的符號對字節(jié)的消耗量不同,例如英語字符和數(shù)字等字符只需要單個字節(jié)就可以存儲,而 GB2312 所包含的字符全部都是使用雙字節(jié)存儲。因為 Unicode 的目標是給世界上每一個字符都編上索引號并收納進去,作為當前世界最大而全的字符集它不得不犧牲簡潔性,它所包含的字符大部分都不能作為常用字符或者不是最被通用的字符,而作為計算機世界使用最多的字符 ASCII 單字節(jié)字符集,只能表達英語世界的字符,為此又有了 UTF-8 這種既簡潔,字符覆蓋率又高的字符集,UTF-8 使用單字節(jié)表示拉丁字母與數(shù)字,兩個字節(jié)表示常用符號(包括常用中文字符),三個字節(jié)表示不常用字符,四個字節(jié)表示奇葩字符,UTF-8 理論上最長可以使用六個字節(jié)來為字符編碼,但為了向 Unicode 看齊,實際上最長四個字節(jié)。
?
轉(zhuǎn)載于:https://www.cnblogs.com/ifantastic/p/4018897.html
總結(jié)
以上是生活随笔為你收集整理的[Linux] 修改系统默认编码的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 00-各种工具下载链接汇总
- 下一篇: Linux——进程管理学习简单笔记