#!/bin/bash
# Created by Ben Okopnik on Wed Sep 27 10:36:36 EDT 2006


[ -z "$1" ] && { printf "Usage: ${0##*/} [-rename] <tracknames_file>\n"; exit; }

ext="wav"

[ "$1" = "-rename" ] && {
        rename=yes
        shift
}

# Ignore spaces in filenames
IFS='
'
list=(`ls -1 *$ext`)
names=(`cat "$1"`)

[ ${#names[*]} -ne ${#list[*]} ] && {
        echo 'The number of track names and music files is different!'
        exit
}

count=0
while [ "$count" -ne "${#names[*]}" ]
do
        if [ -n "$rename" ]
        then
                mv "${list[$count]}" "${names[$count]}.$ext"
        else
                echo "\"${list[$count]}\" will be \"${names[$count]}.$ext\""
        fi
        ((count++))
done

