Linux 修改系統預設編碼

2021-09-06 18:39:22 字數 1160 閱讀 9150

locale 命令用以設定程式執行的語言環境。

locale 設定語言環境的命名規則為 language_area.charset,例如 en_us.utf8 表示語言為英語,地區為美國,字符集為 utf-8。

檢視當前字元對映檔案

$ locale charmap

utf-8

檢視可用公共語言環境

$ locale -a

cc.utf-8

en_ag

...

檢視可用字元對映檔案

$ locale -a

cc.utf-8

en_ag

...

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系統預設字元編碼

查詢所有可用的公共語言環境的名稱 編輯 etc profile 檔案 vi etc profile在檔案最後加上 如果檔案是唯讀,則賦予可寫許可權,改為記得改回唯讀 賦予可寫許可權 chmod 2 etc profile 收回可寫許可權 chmod 2 etc profile 數字表示的屬性的含義 ...

linux修改預設編碼

最近出現在本地環境下應用正常使用,在正式環境linux亂碼的情況。如下操作,可修改linux預設編碼。1 檢視正式環境編碼 cat etc sysconfig i18n 2 檢視正式編碼執行引數 locale 3 檢視本地環境編碼 locale 4 檢視本地編碼執行引數 cat etc syscon...

Linux系統預設編碼設定

源自 http www.xgstudy.com article 30 article22420 1.htm 修改 etc sysconfig language檔案,將rc lang,rc lc all設定為zh cn.gb2312,同時將root uses lang設定為 yes 一。linux系統...