#!/bin/bash # Максимальный уровень громкости (в процентах) MAX_VOLUME=200 # Уникальный идентификатор для уведомления NOTIFICATION_ID=9999 # Получаем текущий уровень громкости CURRENT_VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -oP '\d+%' | head -1 | tr -d '%') # Проверяем переданный параметр if [ "$1" == "+" ]; then # Если параметр "+", увеличиваем громкость if [ "$CURRENT_VOLUME" -lt "$MAX_VOLUME" ]; then pactl set-sink-volume @DEFAULT_SINK@ +10% else # Если громкость уже на максимуме, выводим уведомление notify-send -u normal -r $NOTIFICATION_ID "Невозможно увеличить звук" "Достигнут лимит в $MAX_VOLUME%" exit 0 fi elif [ "$1" == "-" ]; then # Если параметр "-", уменьшаем громкость pactl set-sink-volume @DEFAULT_SINK@ -10% else # Если параметр некорректный, выводим сообщение об ошибке notify-send -u normal -r $NOTIFICATION_ID "Error" "Invalid parameter. Use '+' or '-'." exit 1 fi # Получаем обновленный уровень громкости UPDATED_VOLUME=$(pactl get-sink-volume @DEFAULT_SINK@ | grep -oP '\d+%' | head -1 | tr -d '%') # Отправляем уведомление с текущим уровнем громкости notify-send -u normal -i audio-volume-high -r $NOTIFICATION_ID "Уровень звука" "${UPDATED_VOLUME}%"