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

背景

linux执行windows上传的sh脚本报错: "/bin/bash^M: bad interpreter: No such file or directory
"

原因分析

脚本在windows下创建编辑上传到linux系统,sh文件在windwos是dos格式,而linux却是只能执行格式为unix格式的脚本,所以无法识别

vi $filename

可以发现最后一行包含[doc]字样
在这里插入图片描述

解决方案

1. doc2unix

yum install -y dos2unix
dos2unix $filename

2. vi

vi $filename
:set ff=unix

版权声明:本文为qq_36940806原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。