在windows系统下编辑的shell脚本,copy到Linux上会报“/bin/sh^M: bad interpreter:没有那个文件或目录”的错误
原因在于编辑的时候,可能会有不可见字符
保存为dos格式,每一行的结尾会有\n\r
解决办法:
vim filename
:set ff?
可以看到这个文件是dos还是Unix
如果是dos的,使用
:set ff=unix
转换下
然后再运行
如果有dos2unix命令,也可以使用该命令转换
dos2unix filename