^M 是ascii中的'\r', 回车符,是16进制的0x0D,8进制的015,十进制的13。
对于换行这个动作,unix下一般只有一个0x0A表示换行,windows下一般都是0x0D和0x0A两个字符。
另外:^L 是ascii 0x0C '\f', 换页控制符。
而对于Linux 的vi,有些版本,比如我当前开发板里面的vi,是用busybox编译出来的,不能识别windows下面编辑的,带0x0D的那些文本文件,所以,你在windows下面编辑一个普通的文本文件,如果里面有换行,那么在Linux的vi里面,对应的那个0x0D就会显示出一个^M
如何消除^M
tr -d "\015" < myfile.txt > myfile_new.txt
本文详细解释了^M换行符在不同操作系统之间的区别,并提供了解决在Linux环境中使用vi编辑器打开带有^M换行符的Windows编辑文本文件的问题的方法。
1万+

被折叠的 条评论
为什么被折叠?



