Shell错误:/bin/bash^M: bad interpreter: No such file or directory
错误原因和现象
在执行shell脚本的时候,报错:/bin/bash^M: bad interpreter: No such file or directory。
是由于该脚本文件是在Windows平台编写,然后在MacOS平台中执行。
在Windows平台上文件是dos格式,换行符尾\r\n,而MacOS平台文件是unix格式,换行符尾\n。因此在运行脚本文件时,不能正确解析\r,导致编译错误、运行失败。
解决方案
在MacOS平台上,打开命令行工具执行命令vim *.sh(编辑你的脚本文件),然后执行命令:set ff=unix,最后执行:wqunix( 保存退出)即可。
查询
如果单纯的查询文件格式,可以使用
:set ff
3 thoughts on “Shell错误:/bin/bash^M: bad interpreter: No such file or directory”
查看文件格式,可在vim下,执行:
:set ff?
你好,世界![这是一条自动回复]
还可以用如下两个命令进行互换
“`bash
unix2dos filename
dos2unix filename
“`