You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per this article, it seems that controlling iTunes via Bash is possible.
I haven't tested it and I don't know if the API has changed much for OS X versions released after 2001.
TL;DR
#!/bin/sh###################################### iTunes Command Line Control v1.0# written by David Schlosnagle# created 2001.11.08####################################showHelp () {
echo"-----------------------------";echo"iTunes Command Line Interface";echo"-----------------------------";echo"Usage: `basename $0` <option>";echo;echo"Options:";echo" status = Shows iTunes' status, current artist and track.";echo" play = Start playing iTunes.";echo" pause = Pause iTunes.";echo" next = Go to the next track.";echo" prev = Go to the previous track.";echo" mute = Mute iTunes' volume.";echo" unmute = Unmute iTunes' volume.";echo" vol up = Increase iTunes' volume by 10%";echo" vol down = Increase iTunes' volume by 10%";echo" vol # = Set iTunes' volume to # [0-100]";echo" stop = Stop iTunes.";echo" quit = Quit iTunes.";
}
if [ $#= 0 ];then
showHelp;fiwhile [ $#-gt 0 ];do
arg=$1;case$argin"status" ) state=`osascript -e 'tell application "iTunes" to player state as string'`;echo"iTunes is currently $state.";if [ $state="playing" ];then
artist=`osascript -e 'tell application "iTunes" to artist of current track as string'`;
track=`osascript -e 'tell application "iTunes" to name of current track as string'`;echo"Current track $artist: $track";fibreak ;;
"play" ) echo"Playing iTunes.";
osascript -e 'tell application "iTunes" to play';break ;;
"pause" ) echo"Pausing iTunes.";
osascript -e 'tell application "iTunes" to pause';break ;;
"next" ) echo"Going to next track.";
osascript -e 'tell application "iTunes" to next track';break ;;
"prev" ) echo"Going to previous track.";
osascript -e 'tell application "iTunes" to previous track';break ;;
"mute" ) echo"Muting iTunes volume level.";
osascript -e 'tell application "iTunes" to set mute to true';break ;;
"unmute" ) echo"Unmuting iTunes volume level.";
osascript -e 'tell application "iTunes" to set mute to false';break ;;
"vol" ) echo"Changing iTunes volume level.";
vol=`osascript -e 'tell application "iTunes" to sound volume as integer'`;if [ $2="up" ];then
newvol=$(( vol+10));fiif [ $2="down" ];then
newvol=$(( vol-10));fiif [ $2-gt 0 ];then
newvol=$2;fi
osascript -e "tell application \"iTunes\" to set sound volume to $newvol";break ;;
"stop" ) echo"Stopping iTunes.";
osascript -e 'tell application "iTunes" to stop';break ;;
"quit" ) echo"Quitting iTunes.";
osascript -e 'tell application "iTunes" to quit';exit 1 ;;
"help" | * ) echo"help:";
showHelp;break ;;
esacdone
The text was updated successfully, but these errors were encountered:
Per this article, it seems that controlling iTunes via Bash is possible.
I haven't tested it and I don't know if the API has changed much for OS X versions released after 2001.
TL;DR
The text was updated successfully, but these errors were encountered: