问题记录:/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替换为空白

bash 复制代码
sed -i 's/\r$//' xxx.sh
相关推荐
无聊的小坏坏10 小时前
环境变量深度解析:从配置到内核的全链路指南
linux·bash
Chuncheng's blog12 小时前
如何基于Mihomo Party http端口配置git与bash命令行代理
git·http·bash
粉红色回忆1 天前
linux 如何自定义文件描述符
shell
薛定谔的猫_C8T61 天前
程序人生-Hello’s P2P
c语言·汇编·程序人生·shell·二进制·计算机系统·hello
孙克旭_2 天前
day027-Shell自动化编程-基础
linux·运维·自动化·shell
shut up2 天前
Git的使用技巧
gitee·github·shell
粉红色回忆2 天前
linux简单理解输入输出重定向
shell
开挖掘机上班3 天前
Bash shell四则运算
linux·开发语言·bash·shell
Johny_Zhao3 天前
Linux服务器(CentOS/Ubuntu)接口Bond模式详解、配置指南及交换机对应接口的配置示例
linux·网络安全·信息安全·云计算·shell·cisco·huawei·系统运维·华三
粉红色回忆3 天前
简单理解linux文件描述符
shell