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

1.Linux下运行如下shell命令

#!/usr/bin/sh
cd /data/web && /usr/local/bin/python3 begin.py

    手动启动:

 sh begin.sh

     报错: 

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

                   

2.问题分析:

 查询sh文件的位置,发现就是   /usr/bin/sh

                                    

那就说明不是路径的问题

3. 问题定位

   之前也遇到过这个^m报错问题,所以如果环境没问题的话,就是编码问题了,就是不同系统编码格式引起的报错:在 Windows 系统中编辑的 .sh 文件可能有不可见字符,在 Linux 系统下执行会报异常信息。

4.问题解决:

打开文件

vim begin.sh

在终端输入

:

再输入 

set ff=unix

如下:

        

再次运行就好了 

发布了128 篇原创文章 · 获赞 95 · 访问量 35万+

猜你喜欢

转载自blog.csdn.net/qq_36853469/article/details/103564159