关于Linux字符集的查看及修改
一·查看字符集
字符集在系统中体现形式是一个环境变量,其查看当前终端使用字符集的方式可以有以下几种方式:
1、[root@ ~]# echo $LANG
en_US.UTF-8
2、[root@ ~]# env |grep LANG
LANG=en_US.UTF-8
3、[root@david ~]# export |grep LANG
declare -x LANG="en_US.UTF-8"
4、[root@ ~]# locale -a //查看本地字符集
[root@ ~]# locale -m //查看所有支持的字符集
二、set,env和export这三个命令的区别
set 显示当前shell的变量,包括当前用户的变量
env 显示当前用户的变量
export 显示当前导出成用户变量的shell变量
set 用来显示本地变量
env 用来显示环境变量
export 用来显示和设置环境变量
比如设置用户LANG
查看LANG env | grep LANG
设置LANG export LANG=zh_CH.GBK
三、修改字符集的方式
需注意的是:如果默认语言是en_US.UTF-8,在Linux的字符和图形界面下都是无法显示和输入中文的。如果默认语言是中文,比如zh_CN.GB18030 或者
zh_CN.gb2312,字符界面无法显示和输入,图形界面可以。
修改的方式有如下两种:
1、直接设置变量的方式修改,命令如下两条命令:
[root@ ~]# LANG=xxx 或者 export LANG=xxx;
[root@ ~]# LC_ALL=”xxx” 或者 export LC_ALL=”xxx”;
注:xxx为欲修改为的字符集
查看标准的字符集的方法,locale –a命令,常用的有zh_CN.GB2312、zh_CN.GB18030或者zh_CN.UTF-8、en_US.UTF-8等,但是上述修改方式只会在当前shell中生效,新建shell此环境变量消失。
故平时登录系统执行“LANG= ”这个命令就没有乱码的缘故,意思就是取消了字符集的显示.
取消字符集还可以执行[root@ ~]# unset LANG这个命令。
2、修改文件方式,通过修改/etc/sysconfig/i18n文件控制
[root@ ~]# vim /etc/sysconfig/i18n
LANG="en_US.UTF-8" //当前系统的语言环境变量
SUPPORTED="zh_CN.UTF-8:zh_CN.GB18030" //系统预置了那些语言支持 ,不在项目中的语言不能正常 显示
SYSFONT="latarcyrheb-sun16" //定义控制台终端字体,你文本登录的时候显示的字体就 是这个 latarcyrheb-sun16
修改文件保存退出之后要生效要执行如下命令,重启才可生效
[root@ ~]#source /etc/sysconfig/i18n
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!