运行shell脚本出错:/bin/bash^M: bad interpreter
1.原因
出现这个错误是文件格式的问题。可能你在Windows编辑并保存过此脚本,导致文件格式发生了变化。脚本由unix格式转变成了Windows下的dos格式,此格式无法在linux下正常识别为shell脚本。
2.解决方法
打开运行出错的脚本:
vim filename.sh
设置文件格式为unix格式(编辑器底行模式下):
set ff=unix
然后回车;保存退出:
:wq
回车;重新运行脚本即可
3.查看文件格式
打开脚本:
vim filename.sh
查看文件格式(编辑器底行模式下):
set ff
然后回车