Linux vi命令查看和修改文件字符集(乱码、dos2unix)

0    511    4

Tags:

👉 本文共约1038个字,系统预计阅读时间或需4分钟。

命令

示例

在linux环境下,有时候 vi 打开文件会遇到中文乱码问题,或者是原本可以正常执行的命令转移到另一台机器上就没法顺利执行了。

上面说的其实是两个问题,首先来说 vi 打开文件遇到中文乱码问题。

可以看到最底下显示 “文件名称” [converted][dos] xxL, yyC

converted表示已经通过转换,这个转换是vi默认识别出的字符集,也是乱码的来源(请看后面解释)
dos表示是dos的格式,主要体现在回车换行上
xxL表示有xx行,L是行数lineNum的缩写
yyC表示有yy个字符,C表示字符格式,这里的数量和字符集有关系
如果要看当前文件的编码格式,请输入:set fileencoding

一般从windows中传入的文件,vi找不到对应的字符集,最后使用了fileencodding=latin1,导致乱码产生。
还可以指定 vi 查看文件的使用的编码格式,在 ~/.vimrc 文件中添加以下内容:set encoding=utf-8 fileencodings=utf-8 (这里是utf-8为例)。 这样就可以让vi自动识别文件编码,就是依照fileencodings提供的编码列表尝试,如果没找到适合的编码格式,就用latin1(ASCII)编码打开,这里解释了上面乱码的原因。

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信dbaup66,谢谢!
AiDBA后续精彩内容已被站长无情隐藏,请输入验证码解锁本文!
验证码:
获取验证码: 请先关注本站微信公众号,然后回复“验证码”,获取验证码。在微信里搜索“AiDBA”或者“dbaup6”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复