Shell错误:/bin/bash^M: bad interpreter: No such file or directory

目录

错误原因和现象

解决方案


错误原因和现象

在执行shell脚本的时候,报错:/bin/bash^M: bad interpreter: No such file or directory。

是由于该脚本文件是在Windows平台编写,然后在MacOS平台中执行。

在Windows平台上文件是dos格式,换行符尾\r\n,而MacOS平台文件是unix格式,换行符尾\n。因此在运行脚本文件时,不能正确解析\r,导致编译错误、运行失败。

解决方案

在MacOS平台上,打开命令行工具执行命令vim *.sh(编辑你的脚本文件),然后执行命令:set ff=unix,最后执行:wq( 保存退出)即可。

相关推荐
lusklusklusk16 分钟前
Python 全局变量与局部变量区别——global 关键字、__main__ 块与作用域示例
开发语言·前端·python
马剑威(威哥爱编程)30 分钟前
Python 智能体开发实战 01:装了三遍环境还在报错?虚拟环境和 DeepSeek 一次配到位
开发语言·人工智能·python·agent
octopus_c34 分钟前
C++ 入门
开发语言·c++·算法
步行cgn1 小时前
JSON.stringify 详解:把 JavaScript 对象变成 JSON 字符串
开发语言·javascript·json
Soneswy2 小时前
C++基础篇——类与对象(中)
开发语言·c++
CoderYanger2 小时前
Java EE 进阶:5. Spring IoC&DI(第二弹):Spring IoC
java·开发语言·spring boot·spring·面试·职场和发展·java-ee
青峰讲运维2 小时前
OpenStack Heat 编排:用模板一键交付云业务,告别手动点页面
开发语言·php·openstack
MyFreeIT3 小时前
Python Windows Manual
开发语言·python
kiracrimson3 小时前
STL:List的使用和模拟实现
开发语言·c++·list
北冥you鱼3 小时前
Go 语言 GORM 使用 Preload:从关联查询到嵌套预加载的完整实践
开发语言·jvm·golang