You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派运行soundboard.sh脚本报错/bin/sh^M: 如何解决?

解决bash: ./soundboard.sh: /bin/sh^M: Bad Interpreter错误

这个错误的根源很明确:你的soundboard.sh脚本使用了Windows风格的换行符(CRLF),而树莓派的Linux系统只识别Unix风格的换行符(LF)。系统读取脚本第一行的#!/bin/sh时,会把末尾隐藏的^M(回车符)当成解释器路径的一部分,自然找不到/bin/sh^M这个不存在的文件。

下面是几种快速修复的方法:

方法1:用dos2unix工具转换(最简便)

如果你的树莓派还没装dos2unix,先安装:

sudo apt update && sudo apt install dos2unix

然后转换脚本的换行格式:

dos2unix soundboard.sh

转换完成后,直接运行脚本即可:

./soundboard.sh

方法2:用sed命令手动清除回车符

如果不想装新工具,可以用Linux自带的sed命令直接替换掉所有行末尾的\r(也就是^M):

sed -i 's/\r$//' soundboard.sh

方法3:在编辑器里手动设置换行格式

用nano编辑器:

  1. 打开脚本:nano soundboard.sh
  2. 按下Ctrl+O准备保存,此时按下Ctrl+M切换换行格式(编辑器底部会显示File Format: Unix)
  3. 按Enter确认保存,最后Ctrl+X退出

用vim编辑器:

  1. 打开脚本:vim soundboard.sh
  2. 输入命令:set fileformat=unix并回车
  3. 输入:wq回车保存并退出

另外提醒一句:之后编辑这类脚本时,尽量用支持Unix换行格式的编辑器,或者在保存时选择Unix格式,避免再出现同样的问题。

内容的提问来源于stack exchange,提问作者Christopher Klemenz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 07:24:14