-bash: ./deploy.sh: /bin/bash^M: bad interpreter: No such file or directory Published on Jul 9, 2024 in 随笔 with 0 comment 报错解释: 这个错误表明你尝试执行名为 deploy.sh 的脚本文件时遇到了问题。具体来说,是因为该脚本文件的第一行(shebang行)中的解释器路径 /bin/bash^M 后面跟了一个 ^M,这个字符实际上是Windows风格的行结束符\r\n(即CR+LF),而Unix/Linux系统中只使用LF作为行结束符。因此,shell在尝试执行时找不到 /bin/bash^M 指定的解释器,因为这个路径是无效的。 解决方法: 你需要将脚本中的Windows风格的行结束符\r\n转换为Unix/Linux的行结束符\n。可以使用dos2unix命令或者sed命令来转换文件。 执行以下命令之一: 如果你有 dos2unix 工具安装: dos2unix deploy.sh 如果你只有 sed 命令: sed -i 's/\r$//' deploy.sh 转换完成后,你应该能够正常执行脚本: ``` ./deploy.sh ``` 本文由 admin 创作,采用 知识共享署名4.0 国际许可协议进行许可。本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。