去掉 vim 每行结尾的 ^M

作者: , 共 378 字 , 共阅读 0

有时候用vim打开文件,每行结尾都有一个灰色的^M。这个原因是该文件在 windows 系统上被创建。windows 的换行符是\n\r,而 unix 下的文本换行只需要\n,这个多余的\r就被显示为^M,虽然显示为两个字符,但其实是一个字符。

大多数情况下,打开这种文件,vim的状态栏会显示文件格式:utf-8[dos],此时只需要下面命令可转为unix格式,即可删除所有的^M:

:set ff=unix

如果vim显示文件格式已经是utf-8[unix],这时候上述命令就不管用了,说明 vim 识别类型错误,可以先把它纠正(即用dos格式打开当前文件),再变更类型:

:e ++ff=dos 
:set ff=unix

还有一种方法是字符串替换:

:%s/\r//g

注意这里是用\r而不是^M,这也是很多人不会删除^M的原因。

Q. E. D.

类似文章:
编程 » Linux, Vim, 文件编码
由于 UNICODE 的优势,目前推荐都用 UTF-8 进行编码。
编程 » Matlab
读者来信:
IT » WSL, SSH
世界上最好的 Linux 发行版 Bash on Windows 已经升级到了 Ubuntu 18.04 ,并且提供越来越多的功能。下面是笔记,记录如何启动子系统的 SSHD 服务并设置开机自动启动,也顺带开机自动启动了子系统。
IT » Linux系统配置
查看当前 DNS :
之前对普通 Excel 文件,我都保存为默认的 xlsx 格式,带 vba 的保存为 xlsm 格式。最近从同事那里见到一个高大上的 excel 文件格式: xlsb。我学习了一下,觉得甚为强大,在此推荐一下。
键盘流(指尽量使用键盘,少动用鼠标,尤其不要在鼠标和键盘之间来回切换)是我追求的目标。我工作中用的最多的软件是 Excel ,写代码写的最多的是 Excel/VBA。用得多了自然比较关注工作效率,所以我在 Excel 键盘流上略有心得,这里给大家分享一下。网上有很全的快捷键列表,但那不是我想写的,因为太多记不下来不实用。这里只列举一下我在实际工作中的的确确总是在用的,为自己方便,也共享给大伙们。
IT »
最近试用了一些 markdown 编辑器,之前最有名的是 simplemde, 2017 年之后未更新,有人在此基础上做了个 easymde,现在还有一些更新。
资源 »
人到中年,越来越胖。健康饮食越来越重要。我去看了一下中美的居民膳食指南。