#!/bin/sh # (C) Copyright Collin Doering 2011 # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # File: vol.sh # Author: Collin J. Doering # Date: Feb 22, 2011 #TODO: fix this horrible code..the obvious issues being multiple calls to amixer..have the needed data stored in VOL_DATA and then further parse the needed data from there # VOL_DATA="$(amixer get Master | sed -n '6p')" # VOLUME="$(echo $VOL_DATA | cut -f7 -d' ' | sed 's/^.\(.*\).$/\1/')" # assumes left and right are tied together # VOL_STATUS="$(echo $VOL_DATA | cut -f8 -d' ' | sed 's/^.\(.*\).$/\1/')" VOLUME="$(amixer get Master | sed -n '6p' | cut -f7 -d' ' | sed 's/^.\(.*\).$/\1/')" VOL_STATUS="$(amixer get Master | sed -n '6p' | cut -f8 -d' ' | sed 's/^.\(.*\).$/\1/')" if [ "$VOL_STATUS" == "off" ]; then echo "Vol: Mute" else echo "Vol: $VOLUME" fi