暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Linux查看日志tail中文不是乱码但vi中文是乱码

www_heql 2025-04-02
265

最近在部署DMDRS的过程中,遇到乱码问题。经过网络搜索、测试,处理完成。

一、方法如下,供自己、大家了解。

vi /etc/virc    --添加下面三行

set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936

set termencoding=utf-8

set encoding=utf-8

二、知识补充

vim编码方面的基础知识,

1、存在3个变量

encoding—该选项使用于缓冲的文本(你正在编辑的文件),寄存器,vim 脚本文件等。你可以把 'encoding'选项当作是对vim内部运行机制的设定。 

fileencoding—该选项是vim写入文件时采用的编码类型。

termencoding—该选项代表输出到客户终端(Term)采用的编码类型。

2、此3个变量的默认值

encoding—与系统当前locale相同,所以编辑文件的时候要考虑当前locale,否则要设置的东西就比较多了。

fileencoding—vim打开文件时自动辨认其编码,fileencoding就为辨认的值。为空则保存文件时采用encoding的编码,如果没有修改encoding,那值就是系统当前locale了。

termencoding—默认空值,也就是输出到终端不进行编码转换。

由此可见,编辑不同编码文件需要注意的地方不仅仅是这3个变量,还有系统当前locale和文件本身编码以及自动编码识别、客户运行vim的终端所使用的编码类型3个关键点,这3个关键点影响着3个变量的设定。




「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论