爽解报错:/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
相关推荐
悄悄敲敲敲1 小时前
Linux:进程间通信->共享内存
linux·运维·服务器
绵绵细雨中的乡音2 小时前
Linux进程学习【环境变量】&&进程优先级
linux·运维·学习
GanGuaGua2 小时前
linux:进程的替换
linux·运维·服务器
梓䈑3 小时前
【Linux系统】详解Linux权限
linux·运维·bash
小茬粥3 小时前
kvm网卡发现的采集信息脚本COLT_CMDB_KVM_NETDISC.sh
linux·kvm
Mr_sun.3 小时前
Day23-Web开发——Linux
linux·运维·服务器
星雨流星天的笔记本4 小时前
1、Linux操作系统下,ubuntu22.04版本切换中英文界面
linux·学习
muxue1784 小时前
centos 7 网络配置(2):ping命令出现问题
linux·网络·centos
唐僧洗头爱飘柔95274 小时前
(云计算HCIP)HCIP全笔记(九)本篇介绍操作系统基础,内容包含:操作系统组成、分类和定义,Linux的特性结构和Linux版本分类
linux·笔记·华为云·云计算·hcip·openeuler·操作系统概述
电鱼智能的电小鱼5 小时前
EFISH-SBC-RK3588 —— 厘米级定位 × 旗舰算力 × 工业级可靠‌
linux·人工智能·嵌入式硬件·边缘计算