Linux中执行bash脚本报错/bin/bash^M: bad interpreter: No such file or directory

文章目录

参考博客: Linux中执行bash脚本报错/bin/bash^M: bad interpreter: No such file or directory
首先在此对这位博主表示感谢。

运行bash脚本会出现两个文件, 1037.err1037.out

1037.err的文件内容如下:

  • /data/home/user12/.lsbatch/1694577957.1037: /data/home/user12/.lsbatch/1694577957.1037.shell: /bin/sh^M: bad interpreter: No such file or directory

|-----|
| 第一步 |

复制代码
使用下述命令看看该文件的格式,dos格式的文件行尾为^M$,unix格式的文件行尾为$

执行命令行:cat -A xxx.sh

复制代码
二、详解
1、cat -A 表示展示所有,等同于-vET;
2、cat -b:输出带有行号的字符到基本输出设备(一般是屏幕);
3、cat -e:等同于-VE
4、cat -E:在每行的最后展示$符号;就是无论你输入了什么,屏幕会直接显示你刚才输入的内容,并且在每行最后用$符号结尾;
5、cat -n:在所有输出行前添加行号;
6、cat -s:抑制空行输入,就是如果你有多行连续的空行,他会压缩成一行输出;

|-----|
| 第二步 |

使用下述命令直接替换结尾符为unix格式 命令行:sed -i "s/\r//" xxx.sh ![在这里插入图片描述](https://img-blog.csdnimg.cn/94912813a4cb41a79b926a80bdd88fa5.png)

|-----|
| 第三步 |

再次使用 cat -A xxx.sh命令可以看到文件的格式为unix格式

相关推荐
一个天蝎座 白勺 程序猿1 分钟前
踩坑生产后整理:KingbaseES表空间管理、auto_createtblspcdir参数深度解析与运维最佳实践
运维·数据库·kingbasees
赵庆明老师2 分钟前
Linux Docker打包
linux·运维·docker
Eloudy4 分钟前
docker pull ubuntu:22.04 失败的解决记录
运维·docker·容器
Strange_Head10 分钟前
《Linux系统编程篇》Linux Socket 网络编程03(Linux 进程间通信(IPC))——基础篇
linux·网络·单片机
Strange_Head14 分钟前
《Linux系统网络协议》从 TCP 到 HTTP:理解 Web 通信的第一步——网络篇
linux·网络·网络协议
爱吃生蚝的于勒25 分钟前
【Linux】重中之重!TCP协议
linux·运维·服务器·网络·学习·tcp/ip
楼田莉子26 分钟前
Linux网络:TCP协议
linux·运维·服务器·网络·tcp/ip
qq_2351321728 分钟前
五金制造行业ERP系统多少钱?易呈erp五金行业版功能模块详解与成功案例分享
大数据·运维·人工智能·制造·智能制造
Datawhale32 分钟前
Claude AI 全套课程,如何从零开始构建并自动化各种项目!
运维·人工智能·自动化
IMPYLH33 分钟前
Linux 的 logname 命令
linux·运维·服务器·bash