在网上有很多方法,很多解析,这个大家想了解一下的话,就去搜索一下,我理解的大概就是一个历史遗留问题,dos和unix之间的不统一吧(我也是喵了几眼而已)。言归正传,解决这个用到了两个链接https://www.cnblogs.com/lipijin/p/3837619.html,还有https://jingyan.baidu.com/article/19020a0a041d61529d28423d.html,用了百度经验的方法是可以把所有的^M去掉的,但就仅仅是去掉了,不会换行的,但如果用第一个链接的就会说匹配不到^M的,这个是为什么?根据我多年踩坑的经验,^M这个很明显就是显示的问题(去搜索显示^M出现的原因,就会有对应的解析,为什么换行会显示^M),所以匹配^M根本是不行的,因为其实^M根本不存在,只是显示问题,实际上是一个换行符。从百度经验里也能看到,百度经验的做法是匹配\n换行符,所以结合两个就好了,得到以下方法:
在vim的命令模式中输入:%s/\r/\r/g这样就好了,应该就是把dos的换行变成unix的换行吧。有大神懂的就留言或者发邮件到:tvvbbb@163.com联系本人。本文仅提供方法,过程未必正确。