Over the last few days, I've been ripping music (using Windows Media Player) in locations where there has been no Internet access available. Previously, I had thought that if I navigated through the correct menu options I could get my music collection organised correctly. Apparently not. What I've found is that based on my recent experience Windows Media Player only seems to get the ID3 tag information but doesn't seem to alter the filenames and folders correctly.
These series of scripts attempts to rectify the problem by using this information to alter the ripped files. You then simply copy the files back into the music library for re-scanning by the program in question (Microsoft Windows Media Player or Apple iTunes are the one's you'll most likely encounter and the ones that I tested with.) They seem to work but more testing may be required.
ID3 Music Organiser Script
These series of scripts are used to organise a group of ripped MP3 files that have ID3 tags but not the correct file and folder names. It does so by calling a series of commands to rename files based on ID3 tag information and then attempts to move or rename files and folders based on artist or album. Using just 'master.sh' you can organise by album/artist but by using 'organise.sh' you can organise based on the more conventional artist/album system as used by Microsoft and Apple.
Either way, Windows Media Player should eventually figure out how to reorganise your files based on the information, files, and folders that are supplied (WMP only seems to get the ID3 tag information based on my recent experience which is why I built these scripts) by these scripts.
Obviously, you can run these scripts on an ad-hoc basis and/or you can also run it continuously with a scheduling program such as 'cron'. You also need the following utilities to be installed, id3, eyed3, and uuid-runtime.
As this is the very first version of the program (and I didn't have access to all test data while I was cleaning this up it may be VERY buggy). Please test prior to deployment in a production environment.