Vim在每一行结束时显示^M。

我如何用在Vim中打开的文件中的普通换行符替换它?


当前回答

sed s/^M//g file1.txt > file2.txt

其中^M是通过同时按下3个键,ctrl + v + M

其他回答

这招对我很管用:

:% s/\r\n/\r

如果文件是在windows上创建的,请使用dos2unix实用程序。 如果文件是在mac上创建的,请使用mac2unix实用程序:)

^M给出不需要的换行符。要处理这个问题,我们可以使用sed命令,如下所示:

sed 's/\r//g'

在VIM命令模式下:

:e ++ff=dos | setl ff=unix | up

e++ ff=dos -强制打开dos格式的文件。

Setl ff=unix -将文件转换为unix格式。

上保存文件时,仅当已修改。

就我而言,

上面没有工作,我有一个CSV文件从我的mac复制到Linux机器,我使用了所有上述命令,但没有帮助,只有下面一个

tr "\015" "\n" < inputfile > outputfile

我有一个文件,其中^M个字符被夹在行之间,如下所示

Audi,A4,35 TFSi Premium,,CAAUA4TP^MB01BNKT6TG,TRO_WBFB_500,Trico,CARS,Audi,A4,35 TFSi Premium,,CAAUA4TP^MB01BNKTG0A,TRO_WB_T500,Trico,