问题描述:我在Windows下将shell脚本编写好上传至Linux服务器,chmod之后执行脚本出现如下问题

Linux下执行shell脚本出现-bash: ./stop.sh: /bin/bash^M: bad interpreter: No such file or directory问题

Linux下执行shell脚本出现-bash: ./stop.sh: /bin/bash^M: bad interpreter: No such file or directory问题

出现原因:Windows下编辑的shell脚本文件格式是dos,而Linux下需要unix格式的,可用vim编辑器查看文件格式按【ESC键>>按shift+冒号>>输入set  ff>>回车】

Linux下执行shell脚本出现-bash: ./stop.sh: /bin/bash^M: bad interpreter: No such file or directory问题

解决方案:将dos格式改为unix格式后再执行,具体操作步骤如下,在vim编辑器中按【shift+冒号>>输入set ff=unix>>回车】,再次查看文件格式【shift+冒号>>输入set  ff>>回车】,看到如下内容说明格式已经更改为unix格式,【shift+冒号>>输入wq>>回车】保存并退出vim

Linux下执行shell脚本出现-bash: ./stop.sh: /bin/bash^M: bad interpreter: No such file or directory问题

查看问题是否解决,再次执行脚本看是否能正常运行,出现如下结果说明已经OK了

Linux下执行shell脚本出现-bash: ./stop.sh: /bin/bash^M: bad interpreter: No such file or directory问题