当我在 Vim 中打开文件时,我看到奇怪的^M
字符。
不幸的是,世界上最受欢迎的搜索引擎不能很好地处理查询中的特殊字符,所以我在这里问:
这个
^M
角色是什么?它怎么会到那里呢?
我该如何摆脱它?
答案1
答案2
更简单的方法是使用以下命令:
dos2unix filename
该命令也适用于路径模式,例如
dos2unix path/name*
如果不起作用,请尝试使用不同的模式:
dos2unix -c mac filename
-c
设置转换模式。其中 CONVMODE 是以下之一:ascii, 7bit, iso, mac
默认ascii
。
答案3
这对我有用
:e ++ff=dos
:e ++ff=dos 命令告诉 Vim 再次读取文件,强制 dos 文件格式。 Vim 将删除 CRLF 和仅 LF 行结尾,仅在缓冲区中保留每行的文本。
然后
:set ff=unix
最后
:wq
答案4
Sed 就地解决方案,无需输入特殊字符(您可以复制它并且它可以工作):
sed -i -e "s/\r//g" filename
解释:
-i: in-place
-e: regular expression
\r: escaped carriage return
/g: replace globally