All pastes #1043163 Raw Edit

volctl

public shellscript v1 · immutable
#1043163 ·published 2008-06-09 19:04 UTC
rendered paste body
#!/bin/bash# volctl (1) - Wrapper for controlling volume on OSX via applescript.mute () {	osascript -e 'set volume with output muted'}unmute () {	osascript -e 'set volume without output muted'}mutetoggle () {	osascript <<TOGGLEset isMuted to output muted of (get volume settings)set newMuted to not isMutedset volume output muted newMutedTOGGLE}setvol () {	newVolume=$1	if [ $newVolume -gt 100 ]; then		newVolume=100	fi	if [ $newVolume -lt 0 ]; then		newVolume=0	fi	osascript -e "set volume output volume $newVolume"	echo "Volume set to $newVolume"}volup () {	currentVolume=$(osascript -e 'return output volume of (get volume settings)')	setvol $(expr $currentVolume + $1)}voldown () {	currentVolume=$(osascript -e 'return output volume of (get volume settings)')	setvol $(expr $currentVolume - $1)}usage () {	cat <<USAGE$(basename $0) - Control OSX volume via applescriptOptions:    -h	  -  Print this help    -m	  -  Mute volume    -u    -  Unmute Volume    -t    -  Toggle mute status    +N    -  Increase volume by N, to a max of 100    -N    -  Decrease volume by N, to a minimum of 0     N    -  Set volume to NUSAGE}if [ -n "$1" ]; then	case $1 in		-h) usage ;;		-m) mute ;;		-u) unmute ;;		-t) mutetoggle ;;		+*) volup "${1#+}" ;;		-*) voldown "${1#-}" ;;		*)  setvol "$1" ;;	esacelse	usagefi