Linux填坑指南
Linux下文本打开出现^M
问题复现
在Windows下编辑的脚本,传到Linux平台,用vim打开,有时候会在文本的行尾出现^M。
出现^M原因
在DOS/Windows里,文本文件的换行符为\r\n,而在nix系统里则为\n,所以DOS/Windows里编辑过的文本文件到了nix里,每一行都多了个^M,所以它只是一个换行符号,没有实际的用处,我们可以将它保留,也可以将它删除。
如何显示^M
# 方法一
cat -A filename
# 方法二
cat -v filename
# 方法三
vi filename
如何删除^M
# 方法一
dos2unix filename
# 方法二
sed -i 's/^M//g' filename # vim里^M输入方式:ctrl+v ctrl+M
# 方法三
:%s/^M//g # vim下
# 方法四
cat -v filename | tr -d ‘\r’
# 方法五
cat -v filename | tr -d '^M'
参考文档:Linux下vim编辑文件烦人的^M