解决Linux服务器执行出现-bash: ./xxx.sh: /bin/sh^M: bad interpreter: No such file or directory
1、可能是您的开头脚本命令错误符号问题;一般不常见
2、高概率是由于您所使用的文件格式不兼容,例如你在sublime上编写的脚本,格式是dos的,而在linux操作系统上应该是Unix的,使用vim编辑器打开脚本文件,末行模式执行set ff命令即可
原本在linux操作系统上的文件格式如下图
而在windows编写后上传(Samba服务,VMware共享文件夹或者xftp软件)的文件格式为dos
因此解决方法就是末行模式下执行下面的命令回车即可
:set ff=unix
核心原因还是在windows中编辑器的问题,如下图依次是notepad++和sublime text3的格式