三种行尾格式如下: unix : \n dos : \r\n mac : \r 这意味着,如果你试图把一个文件从一种系统移到另一种系统,那么你就有换行符方面的麻烦。 因为MS-DOS及Windows是回车+换行来表示换行,因此在Linux下用Vim查看在Windows下写的代码,行尾后"^M"符号。如何才能去掉这些符号呢。除了可以借助外部工具如dos2unix,tr,sed,awk之外,vi本身也提供一些解决方案: 方案一: :set ff=unix #to unix file :set ff=dos #to windows file 方案二: vim +"set ff=unix" +wq $DOS_FILE 方案三: :%s/<Ctrl-v><Ctrl-m>//g 或者 :%s/<Ctrl-v>Enter//g 注意: 上述命令行中的"^M"符,不是"^"再加上"M",而是由"Ctrl+v"、"Ctrl+M"键生成的,或者Ctrl+v,再按回车。 或者使用这个命令: :%s/\r//g 转载请保留固定链接: https://linuxeye.com/Linux/945.html |