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

如何编写Bash脚本检测耳机自带静音键的麦克风状态

检测耳机麦克风静音状态的Bash脚本解决方案

我的耳机带有静音键但无状态指示灯,因此想要编写Bash脚本检测麦克风是否处于开启状态。

最初编写的无效脚本如下:

#!/bin/bash
echo "Mic Check"
timeout 2 pacat -r ./testmic -d 2
FILENAME=./testmic
FILESIZE=$(stat -c%s "$FILENAME")
killall pacat
if (( $FILESIZE <= 100 )); then
    echo "Mic Muted..."
else
    echo "Mic not Muted..."
fi

该脚本会生成testmic文件:麦克风静音时文件为空,未静音时包含音频编码,但无论文件是否为空,$FILESIZE返回值始终相同,无法区分状态。且我希望利用耳机自身的静音系统,而非系统级静音。

最终通过以下脚本解决了问题:

#!/bin/bash
echo "Mic Check"
timeout 2 pacat -r ./testmic -d 2
FILECONTENT=$(grep -L -z -e . testmic)
killall pacat
if [[ "$FILECONTENT" == "testmic" ]]; then
    echo "Mic Muted."
else
    echo "Mic not Muted."
fi

内容的提问来源于stack exchange,提问作者0110k011

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 08:09:56