解决运行sh脚本时提示“/bin/bash^M: bad interpreter: Text file busy”

234次阅读
没有评论

在运行 sh 脚本时提示“/bin/bash^M: bad interpreter: Text file busy”,这个问题通常是由于 Windows 和 Unix/Linux 操作系统之间的换行符差异导致的。

解决运行 sh 脚本时提示“/bin/bash^M: bad interpreter: Text file busy”

在 Windows 操作系统中,每行文本的结尾通常是由 “\r\n”(也称为 CRLF)组成。而 Unix/Linux 操作系统中,每行文本的结尾通常只使用 “\n”(也称为 LF)。因此,在将包含 Windows 风格换行符的脚本文件从 Windows 移植到 Unix/Linux 时,可能会遇到这种类型的错误。

解决这个问题可以通过使用 dos2unix 命令将脚本文件中的换行符转换为 Unix 风格的换行符。你可以在终端中执行以下命令来安装并使用 dos2unix 工具:

  1. Ubuntu/Debian Linux:
sudo apt-get update
sudo apt-get install dos2unix
  1. CentOS/RHEL Linux:
sudo yum install dos2unix
  1. Mac OS X:
brew install dos2unix

安装完毕后,可以使用以下命令将脚本文件中的换行符转换为 Unix 风格的换行符:

dos2unix start.sh
解决运行 sh 脚本时提示“/bin/bash^M: bad interpreter: Text file busy”

然后,再次运行脚本文件 ./start.sh 来确保该问题已经得到解决。

正文完
 0
板面杂货铺
版权声明:本站原创文章,由 板面杂货铺 于2023-06-21发表,共计530字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。