Vim在每一行结束时显示^M。
我如何用在Vim中打开的文件中的普通换行符替换它?
Vim在每一行结束时显示^M。
我如何用在Vim中打开的文件中的普通换行符替换它?
当前回答
要在MacOS上使用sed,请执行以下操作:
sed -i.bak $'s/\r//' <filename>
解释:这里的$'STRING'语法属于bash shell。mac电脑不把\r当作特殊字符。通过在$ "中引用命令字符串,你告诉shell将\r替换为ANSI-C标准中指定的实际\r字符。
其他回答
这是唯一对我有效的方法:
: ff + + =
可以在http://vim.wikia.com/wiki/File_format找到它
在windows下,尝试:%s/<C-Q><C-M>/g
这些建议对我都不起作用,因为在使用vim和eclipse时,我设法获得了^M换行符。我怀疑我遇到了一个外部案件但为了能帮助到其他人。
:%s/.$//g
这解决了我的问题
在Linux和Mac OS上,以下工作,
:%s/^V^M/^V^M/g
其中^V^M意味着输入Ctrl+V,然后Ctrl+M。
注意:在Windows上,你可能想使用^Q而不是^V,因为默认情况下^V被映射为粘贴文本。
这招对我很管用:
设置文件格式为unix (\n行结束) 保存文件
在vim中:
:set ff=unix
:w