ToB企服应用市场:ToB评测及商务社交产业平台

标题: 解决Linux Shell脚本错误:“/bin/bash^M: bad interpreter: No such file [打印本页]

作者: 圆咕噜咕噜    时间: 2024-7-23 22:51
标题: 解决Linux Shell脚本错误:“/bin/bash^M: bad interpreter: No such file
在Linux系统中运行Shell脚本时,你大概会遇到一个常见的错误,错误信息如下:
  1. -bash: ./xxx.sh: /bin/bash^M: bad interpreter: No such file or directory
复制代码
这个错误通常是由于Shell脚本文件中存在不兼容的换行符引起的。在Windows系统中,文本文件的行尾通常以回车符(CR)和换行符(LF)的组合表现(称为CRLF),而在Linux和Unix系统中,行尾仅以换行符(LF)表现。当你在Windows环境下编写或编辑Shell脚本,然后尝试在Linux系统上运行时,就大概会遇到这个题目。
解决方法

解决这个题目的一种简单方法是使用sed命令删除脚本中的回车符。你可以运行以下命令:
  1. sed -i 's/\r$//' xxx.sh
复制代码
这条命令的作用是在原地(-i)修改文件,查找每一行末端的回车符(\r$)并将其删除。这样,文件就会被转换为仅包含换行符(LF)的Unix风格的行尾格式,从而避免了上述错误。
留意



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4