我们运行shell文件时会发生 "bin/bash^M: bad interpreter"。
bin/bash^M: bad interpreter: No such file or directory
本文介绍了此错误发生的原因以及如何避免此错误。
原因
根据错误消息,似乎错误是由错误的文件路径引起的。
但这不是根本原因。
bin/bash^M: bad interpreter: No such file or directory
根本原因是 换行代码。
Windows的换行代码是 CRLF \r\n
。
Linux一个是 LF \r\n
。
如果使用 CRLF \r\n
创建shell文件,则会在linux环境中出现错误。
参考:
/ bin / bash ^ M:糟糕的翻译:没有这样的文件或目录
如何避免错误
用Linux换行代码 LF \n
替换Windows换行代码 CRLF \r\n
。
文本编辑器和正则表达式有助于替换。
最后
- "bin/bash^M: bad interpreter" 错误的原因是换行代码。
- 为了避免错误,您可以用
\n
替换\r\n
。