问题记录:/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
相关推荐
wave_sky6 小时前
解决使用code命令时的bash: code: command not found问题
开发语言·bash
江无行者7 小时前
Windows 环境变量:通过 CMD 和 PowerShell 写入环境变量
shell
致奋斗的我们2 天前
Linux容器(初学了解)
linux·运维·服务器·网络·容器·shell·openeurler
修炼室3 天前
提升开发效率:Bash 脚本自动化环境搭建与依赖安装
linux·开发语言·自动化·bash
vortex53 天前
Bash 中 nohup 与 & 的区别及用法解析
linux·开发语言·bash
岚天start3 天前
Shell脚本一键推送到钉钉告警并@指定人
钉钉·shell·脚本·告警·钉钉告警·艾特
躺不平的理查德4 天前
shell-特殊位置变量
linux·运维·服务器·bash
迷茫运维路7 天前
正则表达式基础知识及grep、sed、awk常用命令
linux·运维·正则表达式·sed·grep·awk
didiplus7 天前
Ansible实战:如何正确选择 command 和shell模块?
linux·服务器·自动化·ansible·shell·command·hosts清单
dgiij8 天前
node.js的进程保活
后端·node.js·bash