Linux字符集問題
一、常見字符集
GB2312又稱為GB2312-80字符集,全稱為《資訊交換用漢字編碼字符集·基本集》。由原中國國家標準總局釋出,1981年5月1日實施。GB2312是中國國家標準的簡體中文字符集。
GB 18030的全稱是GB18030-2000《資訊交換用漢字編碼字符集基本集的擴充》,是我國政府於2000年3月17日釋出的新的漢字編碼國家標準,2001年8月31日後在中國市場上釋出的軟體必須符合本標準。
GBK 向下與 GB 2312 編碼相容,GBK編碼是在GB2312-80標準基礎上的內碼擴充套件規範。
Unicode字符集編碼是Universal Multiple-Octet Coded Character Set 通用多八位編碼字符集的簡稱,是由一個名為 Unicode 學術學會(Unicode Consortium)的機構制訂的字元編碼系統,支援現今世界各種不同語言的書面文字的交換、處理及顯示。。該編碼於1990年開始研發,1994年正式公佈,最新版本是2005年3月31日的Unicode 4.1.0。
Unicode是一種在計算機上使用的字元編碼。它為每種語言中的每個字元設定了統一併且唯一的二進位制編碼,以滿足跨語言、跨平臺進行文字轉換、處理的要求。
UTF-8是Unicode的其中一個使用方式。 UTF是 Unicode Translation Format,即把Unicode轉做某種格式的意思。UTF-8便於不同的計算機之間使用網路傳輸不同語言和編碼的文字
二、檢視字符集
字符集在系統中體現形式是一個環境變數,以redhat為例(bshell)其檢視當前終端使用字符集的方式可以有以下幾種方式:
1、[root@localhost ~]# env | grep LANG
LANG=zh_CN.GB2312
2、[root@localhost ~]# export | grep LANG
declare -x LANG="zh_CN.GB2312"
3、強大的命令:locale
[root@localhost ~]# locale
LANG=zh_CN.GB2312
LC_CTYPE="zh_CN.GB2312"
LC_NUMERIC="zh_CN.GB2312"
LC_TIME="zh_CN.GB2312"
LC_COLLATE="zh_CN.GB2312"
LC_MONETARY="zh_CN.GB2312"
LC_MESSAGES="zh_CN.GB2312"
LC_PAPER="zh_CN.GB2312"
LC_NAME="zh_CN.GB2312"
LC_ADDRESS="zh_CN.GB2312"
LC_TELEPHONE="zh_CN.GB2312"
LC_MEASUREMENT="zh_CN.GB2312"
LC_IDENTIFICATION="zh_CN.GB2312"
LC_ALL=
三、修改字符集
檢視系統支援的字符集:locale –a
常用的有zh_CN.GB2312、zh_CN.GB18030、zh_CH.UTF-8、en_US.UTF-8等。
locale的命名規則為<語言>_<地區>.<字符集編碼>,如zh_CN.UTF-8,zh代表中文,CN代表大陸地區,UTF-8表示字符集。
1、直接設定變數的方式修改
LANG=xxx 或 export LANG=xxx
LC_ALL=”xxx” 或 export LC_ALL=”xxx”
其中xxx為要修改的字符集。
但是這樣的修改方式只會在當前shell中生效。新建shell此環境變數消失。
2、修改/etc/sysconfig/i18n檔案
I18N 是 internationalization 的縮寫形式,意即在 i 和 n 之間有 18 個字母,本意是指軟體的“國際化”
I18N支援多種語言,但是同一時間只能是英文和一種選定的語言,例如英文+中文、英文+德文、英文+韓文等等;
[root@localhost ~]# vi /etc/sysconfig/i18n
LANG="zh_CN.UTF-8"
SUPPORTED="zh_CN.GB18030:zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="latarcyrheb-sun16"
第一行,表明當前系統的語言環境變數設定;
第二行,表明系統預置了那些語言支援,不在專案中的語言不能正常顯示;
第三行,定義控制檯終端字型,文字登入的時候顯示地字型。
修改後要執行如下命令才可生效:
[root@localhost ~]# source /etc/sysconfig/i18n
可以只修改個人的字符集,而不影響其他使用者:
cp /etc/sysconfig/i18n $HOME/.i18n
然後修改$HOME/.i18n檔案即可。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25744374/viewspace-753224/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysql 字符集造成的效能問題MySql
- 更新Linux字符集Linux
- MOGDB/openGauss與PostgreSQL關於GBK字符集問題SQL
- MOGDB/openGauss與PostgreSQL關於GDK字符集問題SQL
- MySQL 字符集與亂碼與collation設定的問題?MySql
- 遷移ORACLE資料到MogDB/openGauss時的字符集問題Oracle
- 關於JDK21控制檯字符集編碼問題JDK
- MYSQL字符集問題1267 Illegal mix of collations (utf8_gMySql
- Linux時區問題Linux
- Linux排查JVM問題LinuxJVM
- Linux 常見問題Linux
- linux遇到的問題Linux
- django儲存資料到表時,遇到字符集問題--已解決Django
- Oracle修改字符集前如何找出可能出現問題的資料?Oracle
- 關於mysql查詢字符集不匹配問題的解決方法MySql
- Linux磁碟滿問題分析Linux
- Linux字符集環境變數設定Linux變數
- 關於Oracle 9i字符集問題的解決辦法FCOracle
- MYSQL 5.7 升級 8.0 後的 由於字符集導致的大問題 ?MySql
- Oracle Linux 7設定中文字符集OracleLinux
- linux中ls卡死的問題Linux
- [20220623]linux 口令expire問題.txtLinux
- Kali Linux 2020.1亂碼問題Linux
- Linux 問題處理集錦Linux
- linux出現故障字符集亂碼故障排查思路Linux
- Linux 常見問題 - 拒絕遠端訪問Linux
- linux df -h卡頓問題(卡住)Linux
- Linux IP地址修改與配置問題Linux
- Linux安全問題的google重視LinuxGo
- xshell連線不上linux問題Linux
- Linux無法解析主機問題Linux
- 【Linux】CentOS操作和問題彙總LinuxCentOS
- Linux MIPI 除錯中常見的問題Linux除錯
- linux伺服器環境搭建問題Linux伺服器
- 解決Kali Linux 2020.1亂碼問題Linux
- Linux Centos6.5 使用問題彙總LinuxCentOS
- Linux while 迴圈中使用ssh問題LinuxWhile
- 用linux man命令,自己解決問題Linux
- LINUX 解決時間同步問題(NTP)Linux