/bin/bash^M: bad interpreter
问题
windows下保存了shell脚本文件,上传到linux并执行,错误提示:/bin/bash^M: bad interprete
原因
该脚本被转换成Windows下的dos文本格式了,这样的格式每一行的末尾都是以\r\n来标识,它的ASCII码分别是0x0D,0x0A。如果你将这个脚本文件直接放到Linux上执行就会报/bin/bash^M: bad interpreter错误提示。
解决
vim编辑文件
:set ff?
命令检查一下,看看是不是dos字样,如果是dos格式的,继续执行
:set ff=unix
然后执行
:qw