问题记录:/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
相关推荐
dingdingfish8 小时前
GNU Parallel 学习 - 第1章:How to read this book
bash·shell·gnu·parallel
dingdingfish11 小时前
GNU Parallel 学习笔记 - 总目录
bash·gnu·parallel
鸠摩智首席音效师16 小时前
Linux Bash 中如何追加内容到文件 ?
linux·运维·bash
Laughtin3 天前
macos命令行更换终端代理的方法
macos·bash·mac
zmjjdank1ng3 天前
理解bash和shell
linux·运维·开发语言·bash
似霰3 天前
Linux Shell 脚本编程——核心基础语法
linux·shell
似霰4 天前
Linux Shell 脚本编程——脚本自动化基础
linux·自动化·shell
Bdygsl4 天前
Linux小程序(2)—— bash模拟实现
linux·bash
weixin_462446235 天前
一键安装单节点 Zookeeper 3.8.5(附完整 Bash 脚本)
zookeeper·debian·bash
偷学技术的梁胖胖yo5 天前
Shell脚本中连接数据库查询数据报错 “No such file or directory“以及函数传参数组
linux·mysql·shell