如果我打开在Windows中创建的文件,所有行都以^M结尾。如何一次删除这些字符?


当前回答

我想要用换行符代替^M。Perl拯救:

perl -pi.bak -e 's/\x0d/\n/g' excel_created.txt

或写入标准输出:

perl -p -e 's/\x0d/\n/g' < excel_created.txt

其他回答

这是我的方式。我在DOS EOL中打开了一个文件,当我保存该文件时,它将自动转换为Unix EOL:

autocmd BufWrite * :set ff=unix

:set fileformat=unix将DOS转换为unix。

您可以使用:

vim somefile.txt +"%s/\r/\r/g" +wq

或者dos2unix实用程序。

可以使用以下命令::%s/^V^M//g其中“^”表示使用CTRL键。

关于让^M出现的评论是对我有用的。在我的vi中只键入“^M”没有得到任何结果(未找到)。不过,CTRL+V CTRL+M序列做得很好。

我的工作替代命令是

:%s/Ctrl-V Ctrl-M/\r/g

在我的屏幕上看起来是这样的:

:%s/^M/\r/g