爽解报错:/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
相关推荐
夜月yeyue9 小时前
Linux内高端内存
linux·运维·单片机·嵌入式硬件·ci/cd·硬件架构
猫豆~10 小时前
nginx实战-PHP——day2
linux·centos·云计算
杨云龙UP10 小时前
MySQL 自动备份与覆盖恢复实战:一套脚本搞定全库/按库备份恢复
linux·运维·数据库·sql·mysql
三小尛10 小时前
Linux的常见指令
linux
starvapour10 小时前
Ubuntu下sudo的免密操作
linux·ubuntu
sjg2001041410 小时前
Deepin 20.9 误装gcc-8-base_8.4.0-1ubuntu1~16.04.1_amd64 后卸载
linux·运维·服务器
一帘忧梦11 小时前
linux 系统rcs脚本启动
linux·运维·lua
jerryinwuhan11 小时前
1210_1 Linux
linux·运维·服务器
福尔摩斯张12 小时前
Linux信号捕捉特性详解:从基础到高级实践(超详细)
linux·运维·服务器·c语言·前端·驱动开发·microsoft
looking_for__12 小时前
【Linux】进程控制
linux