爽解报错:/bin/bash^M: bad interpreter: No such file or directory

把Shell脚本从Windows下移到Linux环境下,会有报错

/bin/bash^M: bad interpreter: No such file or directory。

原因是在Windows中,文本文件的行尾通常以回车符(CR)和换行符(LF)的组合表示(称为CRLF),而在Linux和Unix系统中,行尾仅以换行符(LF)表示。

Shell脚本拷贝到windows系统上时变成了DOS格式,以\r\n结尾,而unix系统以\n结尾。

解决方法:使用sed命令删除脚本中的回车符。

复制代码
sed -i 's/\r$//' xxx.sh
相关推荐
Pocker_Spades_A21 分钟前
终端里也能斗地主:Linux部署Ratel,从本地对战到公网联机
linux·运维·服务器
佳児素花痴╮41 分钟前
C语言链接库
linux·运维·服务器
wWYy.1 小时前
Linux发送数据包的过程
linux·网络
小嵌同学2 小时前
Linux 内核中的 Per-CPU 机制详解
linux·运维·arm开发·嵌入式
Hello-FPGA2 小时前
嵌入式LINUX 设备 ip配置后怎么保存才能掉电不消失?
linux·运维·服务器
工业一体机老司机3 小时前
Linux工业一体机自启动服务配置:systemd服务单元编写与开机优化实战
java·linux·服务器
zhixingheyi_tian3 小时前
Linux 之 ssh
linux·服务器·ssh
小鱼仙官3 小时前
Ubuntu C++ NTP校时程序
linux·c++·ubuntu
RisunJan3 小时前
Linux命令-vgdisplay(显示卷组详细属性)
linux·运维·数据库
深念Y4 小时前
RIO-UL00(EMUI 4.1 / Android 6.0.1 / arm64)开机自启动 sshd
android·linux·华为·安卓·chroot·sshd·emui