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

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


当前回答

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

其他回答

要在MacOS上使用sed,请执行以下操作:

sed -i.bak $'s/\r//' <filename>

解释:这里的$'STRING'语法属于bash shell。mac电脑不把\r当作特殊字符。通过在$ "中引用命令字符串,你告诉shell将\r替换为ANSI-C标准中指定的实际\r字符。

在串行控制台上,所有的vi和sed解决方案都不适合我。我不得不:

cat inputfilename | tr -d '\r' > outputfilename

这对我来说很简单

dos2unix   filename

这招对我很管用:

:% s/\r\n/\r

或者不使用vim,只需使用此命令修复换行符

fromdos <filename.txt>

希望能有所帮助!