如果我打开在Windows中创建的文件,所有行都以^M结尾。如何一次删除这些字符?
当前回答
:set fileformat=unix将DOS转换为unix。
其他回答
这是我的方式。我在DOS EOL中打开了一个文件,当我保存该文件时,它将自动转换为Unix EOL:
autocmd BufWrite * :set ff=unix
使用以下命令:
:%s/^M$//g
要显示^M,请键入CtrlV,然后键入CtrlM。CtrlV告诉Vim按字面意思输入下一个字符。
我找到了一个非常简单的方法:用nano:nano-file.txt打开文件
按Ctrl+O保存,但在按Enter键之前,按:Alt+D在DOS和Unix/Linux行结尾之间切换,或按:Alt+M在Mac和Unix/Linux行结尾之间转换,然后按Enter键保存,按Ctrl+X退出。
可以使用以下命令::%s/^V^M//g其中“^”表示使用CTRL键。
我通常使用
:%s/\r/\r/g
这看起来有点奇怪,但由于Vim与linefeed的匹配方式,它起到了作用。我也觉得更容易记住:)