问题记录:/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
相关推荐
吴声子夜歌1 天前
Shell编程实例——bash入门
linux·运维·shell
Swizard1 天前
Linux 日志神器 journalctl 完全指南:彻底替代传统日志查看方式
shell
吴声子夜歌2 天前
Shell编程——数组
linux·运维·shell
吴声子夜歌2 天前
Shell编程——开发规范
linux·运维·shell
吴声子夜歌3 天前
Shell编程——if条件语句
linux·运维·shell
吴声子夜歌3 天前
Shell编程——条件测试与比较
linux·运维·shell
吴声子夜歌3 天前
Shell编程——函数
linux·运维·shell
橘色的喵4 天前
Claude Code 状态栏脚本:一行显示模型、上下文占用、git 分支和当前目录
linux·git·bash·claude
zhangzeyuaaa4 天前
AI Agent 执行引擎选型指南:PowerShell / Bash 和 Python,边界与最佳实践
人工智能·python·bash
吴声子夜歌6 天前
Shell脚本——流程控制:for循环
linux·运维·shell