问题记录:/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
相关推荐
咖啡の猫3 小时前
bash的特性-常见的快捷键
开发语言·chrome·bash
咖啡の猫3 小时前
bash的特性-常用的通配符
开发语言·chrome·bash
fhf1 天前
2025年了你会卸载Macbook上的应用吗?
macos·shell
<但凡.1 天前
Git 完全手册:从入门到团队协作实战(4)
git·bash
Johny_Zhao1 天前
Centos8搭建hadoop高可用集群
linux·hadoop·python·网络安全·信息安全·云计算·shell·yum源·系统运维·itsm
骁的小小站2 天前
The Missing Semester of Your CS Education 学习笔记以及一些拓展知识(六)
linux·经验分享·笔记·学习·bash
IT成长日记3 天前
【自动化运维神器Ansible】Ansible常用模块之shell模块详解
运维·自动化·ansible·shell·常用模块
2301_789380493 天前
华为云搭建Calibre-Web云端书库全记录
服务器·docker·云原生·华为云·bash
励志前端小黑哥4 天前
别再嫌弃你的命令行窗口不好用了 -- 试试ohmyzsh
shell·命令行