linux下执行sh文件报错 :/bin/bash^M: 坏的解释器:没有那个文件或目录” 问题

原文链接:这里

 

0.背景

linux调试wildfly项目,直接执行 ./standalone.sh 。 或者 在目录下执行 bash standlone.sh。然后各种报错。

'\r' 未找到命令

后来一想,为啥会有这个 \r 呢。windows下执行好好的,为啥到了linux上就不行了呢。后来我突然想起来,windows下的换行回车是 \n\r。在linux下是 \n。所以才会有多出来的 \r。我们用下面的指令给它替换掉。

sed -i 's/\r$//' xxx.sh

这样就会把 xxx.sh中的 \r 全部给替换成空白。

上一篇:git安装


下一篇:【Spring 源码深度解析】02 默认标签的解析