/bin/bash^M: 解释器错误:没有那个文件或目录(bad interpreter: No such file or directiry)

/bin/bash^M: 解释器错误:没有那个文件或目录(bad interpreter: No such file or directiry)

问题描述

运行脚本时报错如下:

/bin/bash^M: 解释器错误:没有那个文件或目录(bad interpreter: No such file or directiry)

原因分析
脚本文件在windows下编辑过,windows下行结尾是\n\r,而Linux下则是\n

使用cat-A filename命令可以看到结尾\r字符被显示为^M

解决方案
在终端shell输入如下命令,将脚本文件中的行尾\r替换为空白

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

相关推荐
软件开发技术深度爱好者11 分钟前
Python类中方法种类介绍
开发语言·python
麦麦鸡腿堡12 分钟前
Java_LinkedList底层结构
java·开发语言
whatever who cares20 分钟前
android/java中gson的用法
android·java·开发语言
周杰伦fans32 分钟前
C# 中 Entity Framework (EF) 和 EF Core 里的 `AsNoTracking` 方法
开发语言·c#
小灰灰搞电子36 分钟前
Rust Slint实现控件尺寸的扩展与收缩源码分享
开发语言·后端·rust
☆cwlulu37 分钟前
git分支管理详解
开发语言·git·青少年编程
hashiqimiya43 分钟前
harmonyos的鸿蒙的跳转页面的部署
开发语言·前端·javascript
零基础的修炼1 小时前
Linux---序列化与反序列化
java·开发语言
敲代码的嘎仔1 小时前
JavaWeb零基础学习Day6——JDBC
java·开发语言·sql·学习·spring·单元测试·maven
GIS瞧葩菜1 小时前
【无标题】
开发语言·前端·javascript·cesium