第一行
#!/bin/bash告诉Linux在哪里可以找到解释器。该脚本还应该可以通过执行
chmod +x script.sh,就像您执行的一样。
您很有可能使用Windows编辑器创建了此文件,该编辑器将
<cr><lf>在每行的末尾放置一个。这是dos / windows下的标准。OS
X将
<cr>在每行的末尾放置一个。但是,在Unix / Linux下,标准是将a
<lf>放在行尾。
Linux现在正在寻找一个名为
/bin/bash<cr>解释的文件,其中
<cr>是回车符,在Linux下是有效的文件符。这样的文件不存在。因此,错误。
解决方案:
在Linux上使用编辑器编辑文件,然后删除多余的文件
<cr>。在Windows上编辑文件时,通常可以使用的一种工具是
dos2unix。



