linux中修改字符编码
生活随笔
收集整理的這篇文章主要介紹了
linux中修改字符编码
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
一. ubuntu修改字符編碼
1. 添加字符編碼,例如zh_CN.UTF-8,有兩種方式
方法1:locale-gen zh_CN.UTF-8 ? #locale-gen命令只在ubuntu中才有
方法2:在/var/lib/locales/supported.d/local中添加字符集zh_CN.UTF-8,保存后dpkg-reconfigure locales,然后重啟電腦
?
2. 修改字符編碼,只需修改文件 /etc/default/locale
例子1:解決date命令時間格式顯示錯誤的問題? ? ? ? ? ? ? ? ? ? ? ? ? 添加LC_TIME="en_US.UTF-8" ?要重啟才能生效,或者使用命令 source /etc/default/locale;若要改成中文,只需設為zh_CN.UTF-8即可。 ? 例子2:裝系統的時候如果選擇中文安裝,那么在命令行界面輸出命令的時候會顯示亂碼,只需在這個文件修改為如下? ? ? ? ?? ? ? ? ? ? ? LANG="en_US.UTF-8" ? ? ? ? ? ? LANGUAGE="en_US:en" ? #管理部分命令輸出的狀態信息,比如ufw status的輸出信息3. 其他字符相關文件
1) /etc/environment? ?這個和echo $PATH的輸出是一樣的,是語言環境變量文件 2)/var/lib/locales/supported.d/local ?這個是已經激活的區域語言的列表?
?
二. Centos修改系統級字符集
修改/etc/sysconfig/i18n,英文版和中文版系統初始信息應該如下 英文版系統: LANG="en_US.UTF-8" SYSFONT="latarcyrheb-sun16" ? 中文版系統: LANG="zh_CN.UTF-8" SYSFONT="latarcyrheb-sun16" ? 如果想在英文系統中使用中文,應該怎么做呢 1. 安裝系統支持中文字符集:yum install fonts-chinese 2. 安裝所有與中文支持相關的包:yum -y groupinstall chinese-support 3. 修改/etc/sysconfig/i18i,修改后內容如下:? ? ? LANG="zh_CN.UTF-8" ? ? #LC_ALL=zh_CN.UTF-8 ?貌似也可以這樣寫,centos中還沒經過驗證 ? ? SUPPORTED="zh_CN:zh:en_US.UTF-8:en_US:en:zh_CN.GB18030"? ? ? SYSFONT="latarcyrheb-sun16" ? 修改文件保存退出之后要生效要執行如下命令才可生效 [test@pan ~]$ source /etc/sysconfig/i18n ? ?三. locale常用命令
1. 查看現有語言環境:locale 2. 所有可用語言環境:locale -a,可用來查看是否安裝某種字符集,如果沒有,就安裝 ? ?四. locale 詳解
Locale?是軟件在運行時的語言環境,?它包括語言(Language),?地域?(Territory)?和字符集(Codeset)。一個locale的書寫格式為:?語言[_地域[.字符集]]. 例如: zh_CN.GB2312=中文_中華人民共和國+國標2312字符集。 ? locale把按照所涉及到的文化傳統的各個方面分成12個大類,這12個大類分別是: 1、語言符號及其分類(LC_CTYPE) 2、數字(LC_NUMERIC) 3、比較和排序習慣(LC_COLLATE) 4、時間顯示格式(LC_TIME) 5、貨幣單位(LC_MONETARY) 6、信息主要是提示信息,錯誤信息,?狀態信息,?標題,?標簽,?按鈕和菜單等(LC_MESSAGES) 7、姓名書寫方式(LC_NAME) 8、地址書寫方式(LC_ADDRESS) 9、電話號碼書寫方式(LC_TELEPHONE) 10、度量衡表達方式(LC_MEASUREMENT) 11、默認紙張尺寸大小(LC_PAPER) 12、對locale自身包含信息的概述(LC_IDENTIFICATION)。 ? 語言符號及其分類(LC_CTYPE),? 與中文輸入關系最密切的就是?LC_CTYPE,?LC_CTYPE?規定了系統內有效的字符以及這些字符的分類,諸如什么是大寫字母,小寫字母,大小寫轉換,標點符號、可打印字符和其他的字符屬性等方面 設定locale就是設定12大類的locale分類屬性,即?12個LC_*。 除了這12個變量可以設定以外,為了簡便起見,還有兩個變量:LC_ALL和LANG。 它們之間有一個優先級的關系:?LC_ALL>LC_*>LANG?可以這么說,LC_ALL是最上級設定或者強制設定,而LANG是默認設定值。 ? 比如: 1、如果你設定了LC_ALL=zh_CN.UTF-8,那么不管LC_*和LANG設定成什么值,它們都會被強制服從LC_ALL的設定,成為?zh_CN.UTF-8。 2、假如你設定了LANG=zh_CN.UTF-8,而其他的LC_*=en_US.UTF-8,并且沒有設定LC_ALL的話,那么系統的locale設定以LC_*=en_US.UTF-8。 3、假如你設定了LANG=zh_CN.UTF-8,而其他的LC_*,和LC_ALL均未設定的話,系統會將LC_*設定成默認值,也就是LANG的值?zh_CN.UTF-8?。 4、假如你設定了LANG=zh_CN.UTF-8,而LC_CTYPE=en_US.UTF-8,其他的LC_*,和LC_ALL均未設定的話, ? ? ? 那么系統的locale設定將是:LC_CTYPE=en_US.UTF-8,其余的?LC_COLLATE,LC_MESSAGES等等均會采用默認值,也就是LANG的值 ? ??
? ? ?轉載于:https://www.cnblogs.com/regit/p/7837814.html
總結
以上是生活随笔為你收集整理的linux中修改字符编码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android 录音原始文件_5分钟短文
- 下一篇: 太阳影子定位问题研究