运行命令出现错误 /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,并且没有回车换行的问题。

相关推荐
杨校3 分钟前
杨校老师课堂之C++的位运算应用专项训练
开发语言·c++
笨蛋不要掉眼泪9 分钟前
Java并发编程:线程的创建和运行
java·开发语言·jvm
九伯都9 分钟前
java编写 agent 入门案例
java·开发语言
代码中介商19 分钟前
C++ STL 容器完全指南(三):deque、list 与 map 深度详解
开发语言·c++
xqqxqxxq39 分钟前
Java 线程池(一)
java·开发语言
eggrall1 小时前
Linux进程信号——像收快递一样理解 Linux 信号
linux·开发语言·c++
foundbug9991 小时前
MATLAB实现:基于图像对比度和波段相关性的高光谱波段选择算法
开发语言·算法·matlab
czt_java1 小时前
线程安全问题
java·开发语言·jvm
techdashen1 小时前
Rust 模块和文件不是一回事:一次讲清 `mod`、`use`、`pub use`
开发语言·后端·rust
Wy_编程1 小时前
go中的协程Goroutine
开发语言·golang