#!/bin/bash VOLUME_STEP=2 # Function to check if the audio is currently muted is_muted() { amixer sget Master | grep -q "\[off\]" } # Function to toggle mute status toggle_mute() { amixer sset Master toggle } # Function to increase volume increase_volume() { amixer sset Master "${VOLUME_STEP}%+" } # Function to decrease volume decrease_volume() { amixer sset Master "${VOLUME_STEP}%-" } # Main function main() { case "$1" in "up") if is_muted; then toggle_mute fi increase_volume ;; "down") if is_muted; then toggle_mute fi decrease_volume ;; "toggle-mute") toggle_mute ;; *) echo "Usage: $0 {up|down|toggle-mute}" exit 1 ;; esac # Display the current volume amixer get Master | grep -oE "[0-9]+%" } # Check if an argument is provided if [ $# -eq 1 ]; then main "$1" else echo "Usage: $0 {up|down|toggle-mute}" exit 1 fi