Você pode usar o seguinte comando (versão aprimorada da proposta de terdon):
pactl list sinks | perl -000ne 'if(/#1/){/Volume:.*\s+(\d+)%.*\s+(\d+)%/; exit(1) if (>50 or >50)}'
Ele verificará se os canais Left
e Right
estão acima de 50% e sairá com o valor 1
(0 em vez disso)
Você pode verificar o código de saída com echo $?
:
$ pactl list sinks | perl -000ne 'if(/#1/){/Volume:.*\s+(\d+)%.*\s+(\d+)%/; exit(1) if (<=50 or <=50)}'
$ echo $?
0
UPDATE :
Para incluir o seguinte comando em um script de shell, basta usar o seguinte snippet:
#!/bin/bash
pactl list sinks | perl -000ne 'if(/#1/){/Volume:.*\s+(\d+)%.*\s+(\d+)%/; exit(1) if (>50 and >50)}'
if [ $? -ne 0 ]; then
echo "Volume > 50%"
else
echo "Volume <= 50%"
fi