当前位置: 代码迷 >> 综合 >> windows下编辑的shell脚本在linux下执行出错: /bin/bash^M: 坏的解释器: 没有那个文件或目录
  详细解决方案

windows下编辑的shell脚本在linux下执行出错: /bin/bash^M: 坏的解释器: 没有那个文件或目录

热度:46   发布时间:2023-10-11 11:36:09.0

问题

在Windows系统下使用sublime编辑的shell脚本文件,然后copy到了远程的Linux服务器,当运行的时候报错了。如下所示:
windows下编辑的shell脚本在linux下执行出错: /bin/bash^M: 坏的解释器: 没有那个文件或目录

原因

shell文件在Windows下编辑,每一行结尾是\n\r,而Linux下则是\n,所以才会有多出来的\r。

解决办法

简单粗暴的解决办法,把\r去掉。执行下面命令达到效果

sed -i 's/\r$//' xxxxxxx.sh
  相关解决方案