/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

相关推荐
沐知全栈开发8 分钟前
MongoDB 创建数据库
开发语言
ErizJ26 分钟前
Golang | 迭代器模式
开发语言·golang·迭代器模式
牙痛不能吃糖,哭30 分钟前
C++面试复习日记(8)2025.4.25,malloc,free和new,delete的区别
开发语言·c++
健康的猪33 分钟前
golang的cgo的一点小心得
开发语言·后端·golang
夜夜敲码1 小时前
C语言教程(十六): C 语言字符串详解
c语言·开发语言
宋康1 小时前
C语言结构体和union内存对齐
c语言·开发语言
居然是阿宋1 小时前
Kotlin高阶函数 vs Lambda表达式:关键区别与协作关系
android·开发语言·kotlin
Cao1234567893212 小时前
简易学生成绩管理系统(C语言)
c语言·开发语言
The Future is mine2 小时前
C# new Bitmap(32043, 32043, PixelFormat.Format32bppArgb)报错:参数无效,如何将图像分块化处理?
开发语言·c#
亿坊电商2 小时前
PHP框架在微服务迁移中能发挥什么作用?
开发语言·微服务·php