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
,最后执行:wq
unix( 保存退出)即可。
查询
如果单纯的查询文件格式,可以使用
:set ff
3 thoughts on “Shell错误:/bin/bash^M: bad interpreter: No such file or directory”
查看文件格式,可在vim下,执行:
:set ff?
你好,世界![这是一条自动回复]
还可以用如下两个命令进行互换
“`bash
unix2dos filename
dos2unix filename
“`