antijingoist icon

Set maximum volume on a Linux computer

antijingoist | PRO | 12/30/24 08:01:40 PM UTC | 0 ⭐ | 590 👁️ | Never ⏰ | [BASH, Automation, Volume, shell script]
Bash |

610 B

|

Source Code

|

0 👍

/

0 👎

#!/bin/bash
maxVol=45
maxSec=90
interval=1
 
while true; do
  sleep $interval
  curV=$(amixer -c 0 sget Master | grep -Po "(\d\d)%" | grep -Po "\d*")
  pcmV=$(amixer -c 0 sget  PCM | grep -Po "(\d\d)%" | grep -Po "\d*")
  spkV=$(amixer -c 0 sget Speaker | grep -Po "(\d\d)%" | grep -Po "\d*")
  if [ $curV ]; then
    if [ $curV -gt $maxVol ]; then
      resetV=$(amixer -c 0 sset Master $maxVol%)
    fi
    if [ $curV -gt $maxSec ]; then
      resetV=$(amixer -c 0 sset PCM $maxSec%)
    fi
    if [ $spkV -gt $maxSec ]; then
      resetV=$(amixer -c 0 sset Speaker $maxSec%)
    fi
  fi
 
 
done &

Comments