vim下如何去掉windows编辑的文件中的^M

简介: 可以去掉^M, 例如: 在终端下敲命令: dos2unix a.c 直接转换成unix格式,这样就可以去掉^M    •$dos2unix filename •vim filename :%s/^M$//g ^M = Ctrl+v+m   著作权归作者所有。

可以去掉^M,

例如:

在终端下敲命令:
dos2unix a.c
直接转换成unix格式,这样就可以去掉^M 

 

•$dos2unix filename
•vim filename

:%s/^M$//g

^M = Ctrl+v+m

 

著作权归作者所有。
商业转载请联系作者获得授权,非商业转载请注明出处。
作者:小幕
链接:http://www.zhihu.com/question/22130727/answer/33814375
来源:知乎

基于 DOS/Windows 的文本文件在每一行末尾有一个 CR(回车)和 LF(换行),而 UNIX 文本只有一个换行,即 win每行结尾为\r\n,而linux只有一个\n
如果win下的文档上传到linux,每行的结尾都会出现一个^M,(^M是ctrl+v,ctrl+m)
如果是 单个文档的话,可以用vi打开,执行 :%s/^M//g 来去掉^M,
但如里批量去除的话就不能用vi了,

方法1: 用dos2unix工具,
把win文档转换成linux下文档
命令:
find ./ -type f -print0 | xargs -0 dos2unix

如果想把linux下的文档转换成win下的:
find ./ -type f -print0 | xargs -0 unix2dos

方法2: 用sed命令
把win文档转换成linux下文档:
find ./ -type f print0 | xargs -0 sed -i 's/^M$//'


把linux下的文档转换成win下的
fild ./ -type f print0 | xargs -0 sed -i 's/$/^M/'
【作者】 张昺华
【新浪微博】 张昺华--sky
【twitter】 @sky2030_
【facebook】 张昺华 zhangbinghua
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.
目录
相关文章
|
8月前
|
Ubuntu 开发工具 Windows
vim 在windows系统和ubuntu系统中的配置
vim 在windows系统和ubuntu系统中的配置
|
开发工具 iOS开发 MacOS
windows虚拟机vim退出编辑模式
windows虚拟机vim退出编辑模式
490 0
|
Unix 开发工具 Windows
[20170617]vim在windows下guioption设置
[20170617]vim在windows下guioption设置.txt --//如果你看mswin.vim设置: " On Unix we have two selections, autoselect can be used.
1207 0
|
Web App开发 开发工具 Windows
|
开发工具 Windows
VIM Ctrl-V Conflict with Windows Paste
/************************************************************************************** * VIM Ctrl-V Conflict with Windows Paste * 声明: * 本文主要是为了记录在Windows上面使用VIM时遇到的Ctrl+V不能进入Visual块模式的问题。
1228 0
|
Linux 开发工具 C语言
windows下使用vim(gVim)和gcc(MinGW):C/C++/Fortran/ObjC/Ada Compiler
windows下使用vim(gVim)和gcc(MinGW)像linux下一样编写c程序: linux下vim的功能超强大的文本编辑器;linux写C语言的使用gcc的; windows下能使用vim和gcc来开发C语言程序? 1. 准备vim这个编辑器。在windows下有一个很优秀的gVim文本编辑器,功能与linux的一样,而且更强大。 2. 准备gcc编译器。像C-Free支持的
4296 0