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格式

相关推荐
提娜米苏28 分钟前
非Root环境下的数据挂载解决方案:SSHFS与Mount详解
bash·sshfs
郝亚军42 分钟前
如何在Ubuntu和win10/11之间通过samba访问对方的文件
linux·服务器·ubuntu
曦云沐1 小时前
【避坑指南】Ubuntu更新报错“Repository is not signed”的快速修复
linux·ubuntu·docker
哲伦贼稳妥1 小时前
职场发展-遇到以下情况请直接准备后手吧
运维·经验分享·其他·职场和发展
带土12 小时前
10. .out文件
linux
Exquisite.2 小时前
企业高性能web服务器(4)
运维·服务器·前端·网络·mysql
北塔软件2 小时前
北塔方案 | 政府行业IT运维解决方案
运维·it运维·解决方案·政务
STCNXPARM2 小时前
Linux camera之V4L2子系统详解
android·linux·camera·v4l2架构
yueyuexiaokeai13 小时前
linux kernel常用函数整理
linux·c语言
cg_ssh3 小时前
Docker 下启动 Nacos 3.1.1 单机模式
运维·docker·容器