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

Python脚本输出传递到Bash while循环时触发BrokenPipeError: [Errno 32] Broken pipe错误求助

Python脚本输出传递到Bash while循环时触发BrokenPipeError: [Errno 32] Broken pipe错误求助

我已经绞尽脑汁好几个小时了,这个脚本就是跑不起来。我翻到了谷歌搜索结果的第三页,还和不同的LLM聊了7次,但还是搞不定这个问题。

我的脚本代码:

#!/bin/bash

python3.12 -m speech_recognition | while IFS= read -r x; do
  case $x in
    *"Got it"*)
      echo "Action for text1"
      ffplay -autoexit -nodisp -f lavfi -i 'sine=f=1200:d=0.05'  && ffplay -autoexit -nodisp -f lavfi -i 'sine=f=1500:d=0.05' &
      ;;
    *"You said"*)
      echo "Action for text2"
      espeak-ng "$x"
      ;;
    *"test"*)
      echo "Action for text3"
      ffplay -autoexit -nodisp -f lavfi -i 'sine=f=1200:d=0.05'  && ffplay -autoexit -nodisp -f lavfi -i 'sine=f=1200:d=0.05' &
      ;;
    *)
      echo "No match for $x"
      # Optional default action for unmatched text
      ;;
  esac
  echo $x
done

终端运行输出:

usr_40476@2xeon:~/******/******> bash start.sh
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:878:(find_matching_chmap) Found no matching channel map
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2722:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm_route.c:878:(find_matching_chmap) Found no matching channel map
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib dlmisc.c:339:(snd_dlobj_cache_get0) Cannot open shared library libasound_module_pcm_equal.so (/lib64/alsa-lib/libasound_module_pcm_equal.so: undefined symbol: snd_lib_error)
ALSA lib pcm_dmix.c:1000:(snd_pcm_dmix_open) unable to open slave
^C^CException ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='utf-8'>
BrokenPipeError: [Errno 32] Broken pipe
usr_40476@2xeon:~/******/******> 

备注:内容来源于stack exchange,提问作者usr_40476

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.14 10:58:03