Vim在每一行结束时显示^M。
我如何用在Vim中打开的文件中的普通换行符替换它?
Vim在每一行结束时显示^M。
我如何用在Vim中打开的文件中的普通换行符替换它?
当前回答
这个问题有很多其他的答案,但仍然,下面的最适合我,因为我需要一个命令行解决方案:
vim -u NONE -c 'e ++ff=dos' -c 'w ++ff=unix' -c q myfile
解释:
不加载任何.vimrc文件,打开myfile 执行:e++ ff=dos命令,在dos行结束时强制重新加载整个文件。 执行命令w++ ff=unix,使用unix行结束符写入文件 vim辞职
其他回答
不需要使用Ctrl: : % s / r \ / /美元
或者不使用vim,只需使用此命令修复换行符
fromdos <filename.txt>
希望能有所帮助!
sed s/^M//g file1.txt > file2.txt
其中^M是通过同时按下3个键,ctrl + v + M
^M给出不需要的换行符。要处理这个问题,我们可以使用sed命令,如下所示:
sed 's/\r//g'
在VIM命令模式下:
:e ++ff=dos | setl ff=unix | up
e++ ff=dos -强制打开dos格式的文件。
Setl ff=unix -将文件转换为unix格式。
上保存文件时,仅当已修改。