vim批量清理^M

vim批量清理^M

问题:

该问题是由于将Window 系统中的文件拷贝到Ubuntu 系统下,文件中行首和行尾会多出^M

解决方案:

在Vim中解决这个问题,很简单,在Vim中利用替换功能就可以将“^M”都干掉,

  1. 键入如下替换命令行:
  vim -b setup.sh
 在命令编辑行<就是: 按ESC键 然后shift+:冒号>输入:%s/^M//g

注意:上述命令行中的“M”符,不是“”再加上“M”,而是由“Ctrl+v”、“Ctrl+M”键生成的。这样替换掉以后,保存就可以执行了。

当然还有其他的替换方式比如:

  1. 一些linux版本有 dos2unix 程序,可以用来祛除^M。
  2. cat filename1 | tr -d "r" > newfile 去掉^M生成一个新文件,还有sed命令等,凡是可以替换的命令都是可以用来新生成一个文件的。

按照上面所说的,删除^Mshell脚本就运行正常,后来问同事,原来他windows记事本中修改了程序路径,导致每一行多出了 ^ M

posted @ 2021-02-19 14:12  michaelchengjl  阅读(348)  评论(0编辑  收藏  举报