/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

相关推荐
LDR00615 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术15 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园15 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob15 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享15 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.15 天前
C语言--day30
c语言·开发语言
何以解忧,唯有..15 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽15 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下15 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗11115 天前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言