运行该脚本出现/bin/sh^M: bad interpreter: No such file or directory

错误中脚本文件的一个非常可能的原因是DOS格的, 即每一行的行尾以\r\n来标识, 其ASCII码各自是0x0D, 0x0A.

能够有非常多种办法看这个文件是DOS格式的还是UNIX格式的, 还是MAC格式的

在Terminal中输入例如以下:

vi filename

然后用命令

:set ff?

能够看到dos或unix的字样. 假设的确是dos格式的, 那么你能够用set ff=mac把它强制为mac格式的, 然后存盘退出. 再执行一遍看. 就会看到"^M"的真身。这时候把对于的”^M“删除就好了。

见:http://hi.baidu.com/fuanhong/item/c2340427def4973994f62b9d

时间: 2024-11-06 13:29:52

运行该脚本出现/bin/sh^M: bad interpreter: No such file or directory的相关文章

linux:执行脚本出现/bin/sh^M: bad interpreter: No such file or directory

问题出在^M,原因是脚本文件的编码格式是dos,有可能是我在window下编辑完了直接传到linux的结果,可以在vim中输入以下命令确认编码格式 :set ff //可以看到dos或unix的字样. 如果的确是dos格式的, 那么你可以用set ff=unix把它强制为unix格式的, 然后存盘退出. 再运行一遍看. 也可以在命令行中用dos2unix指令转换编码 #dos2unix filename linux:执行脚本出现/bin/sh^M: bad interpreter: No suc

[shell编程] sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory

转载地址:http://www.cnblogs.com/pipelone/archive/2009/04/17/1437879.html 在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory. 分析:这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息. 解决:1)在windows下转换: 利用一些编辑器如UltraEdit或EditP

linux sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory

在Linux中执行.sh脚本,异常/bin/sh^M: bad interpreter: No such file or directory.这是不同系统编码格式引起的:在windows系统中编辑的.sh文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息. 如果我们的脚本是在windows环境下编写的,需要将编码转换称unix格式. 下面我们用Notepad++中Windows,Unix,Mac三种格式之间的转换. 1.我们先查看当前文件格式(换行符用的是什么字符),如图: 2.从

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

今天在本地写好的脚本上传到linux后不能运行,显示 bin/sh^M: bad interpreter: No such file or directory 这个错误,后来经过百度到可能是文件有问题: 原因是.sh脚本在windows系统下用记事本文件编写的.不同系统的编码格式引起的. 转行文件的编码格式: 1.确保用户对文件有读写及执行权限 [email protected]:~/RMAN/bin> chmod a+x test.sh 2.然后修改文件格式 (1)使用vi工具 [email 

Linux报错第一弹: /bin/sh^M: bad interpreter: No such file or directory

从Windows Sublime 写好一shell脚本,移到 Linux下,发现报错,/bin/sh^M: bad interpreter: No such file or directory 原因:这是不同系统编码格式引起的:在 windows系统中编辑的 .sh文件可能有不可见字符,所以在 Linux系统下执行会报以上异常信息. 解决: 1)在 windows下转换: 利用一些编辑器如 UltraEdit或 EditPlus等工具先将脚本编码转换,再放到 Linux中执行.转换方式如下( U

How to solve "/bin/sh^M:bad interpreter: No such file or directory"

1. The issue is because windows and linux has different file system.2. Use vim to open the file3. Type :set ff?, you will see the text "fileformat=dos" or "fileformat=unix"4. if you find the fileformat is dos, then you got the reason o

执行shell脚本提示“-bash: ./checkP.sh: /bin/sh^M: bad interpreter: No such file or directory”解决方法

在windows机器下新建了一个shell脚本如下 sed -i 's/\r$//' checkP.sh

sh脚本异常:/bin/sh^M:bad interpreter: No such file or directory

linux更改脚本编码格式:vi *.sh 通过 :set ff 查看当前格式 再通过 :set ff=unix 更改 然后保存退出(:wq)

window下编写python脚本在linux下运行出错 usr/bin/python^M: bad interpreter: No such file or directory

今天在windows下使用notepad++写了个python脚本,传到linux服务器执行后提示:-bash: ./logger.py: usr/bin/python^M: bad interpreter: No such file or directory 1.原因分析 这是不同系统编码格式引起的:在windows系统中编辑的logger.py文件可能有不可见字符,所以在Linux系统下执行会报以上异常信息.一般是因为windows行结尾和linux行结尾标识不同造成的,在window中行结