解决在Mac上执行shell脚本,报错"/bin/bash^M:bad interpreter:No such file or directory"
2023-02-21
预计阅读时间:1分钟
今天在Mac下执行shell脚本时,出现了这样的异常信息:
其原因是不同系统编码格式引起的,应该是这个shell脚本在window上被编辑过
解决方法是利用vi编辑器,挺方便,按照如下步骤:
-
输入
vi intstall_dependency_2_mvn_local_repo.sh
,会显示部分内容出来 -
输入
:set ff
,会看到fileformat=dos
,这样就验证了刚才的想法:文件在Windows上被编辑过 -
输入
:set ff=unix
,就会把文件转化为unix格式的,当然Mac上就可以正常使用了 -
输入
:wq
,退出vi
具体为什么会报^M
这个错误,应该是cofigure文件在Windows上编辑时,每行后面会加个ctrl+m就是^M,相应的利用shell执行时,就会变成sh^M,这个命令当然是没有的,就报了上述错误。