运行命令出现错误 /bin/bash^M: bad interpreter: No such file or directory

在系统上运行一个 Linux 的命令的时候出现下面的错误信息:

-bash: ./build.sh: /bin/bash^M: bad interpreter: No such file or directory

这个是在 Windows 作为 WSL 的时候出的错误。

原因和解决

出现问题的原因在于脚本在 Windows 中使用的回车换行和 Linux 使用的回车换行不一样。

如果你的代码是在 Windows 下被下载的话,那么在 WSL 上运行的时候就有可能会出现上面的问题。

解决办法就是打开 NodePad++ 然后对这脚本文件选择使用 LF 结尾的方式就可以了。

目前很多脚本都需要在 Linux 环境下运行,这个也可能是一些公司要求使用 MacOS 的原因吧,因为 MacOS 自带了 Linux,并且没有回车换行的问题。

相关推荐
Wang's Blog8 小时前
Java 项目实战: 交友项目 - FastDFS:入门案例
java·开发语言·交友
apcipot_rain9 小时前
C++转Java日记(03)
java·开发语言·c++
布莱克6059 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_6789 小时前
深挖C++:类和对象(中)
开发语言·c++
灿飞屋9 小时前
Rust 编程其实很简单
开发语言·rust
MOONICK11 小时前
QT元数据
开发语言·qt
D e re k ZH12 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法
灿飞屋12 小时前
Kotlin与Java虚拟机三:控制流
android·java·开发语言·后端·python·kotlin·安卓
xiaoye-duck13 小时前
《C++ 项目:手写大模型接入 SDK》Ollama接口设计(上):初始化、全量响应实现和测试
开发语言·网络·c++·语言模型
总要学点什么14 小时前
第98篇:三维特效-材质线效果——给一条线换十种材质,虚线的图案只填了一半
开发语言·前端·javascript·ecmascript·gis·webgl·材质