shell脚本执行后出现错误提示" /bin/bash^M: bad interpreter: No such file or dire"的解决办法

出现这种情况,通常都是在window下写好的shell脚本,拷贝到linux机器执行 才会出现

原因就是:

windows下每一行的结尾是\n\r,而在linux下文件的结尾是\n

这样window写编辑的shell脚本拷贝到linux下时

每一行的结尾就会多出来一个字符\r

这个\r字符会被显示为^M

所以就会出现错误提示" /bin/bash^M: bad interpreter: No such file or dire",

字面意思就是/bin/bash^M: 坏的解释器: 没有那个文件或目录

 

解决方法:

终端执行

sed -i ‘s/\r$//‘ filename  #flename即shell脚本文件名

这个命令会把以\r结束的字符换成空白

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。