#!/bin/bash TITLE="`id3tool "$1" | grep '^Song Title:' | awk '{ for (i=3;i<=NF;i++) { printf $i; printf " " } }'`" ARTIST="`id3tool "$1" | grep '^Artist:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" ALBUM="`id3tool "$1" | grep '^Album:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" YEAR="`id3tool "$1" | grep '^Year:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" TRACKNUM="`id3tool "$1" | grep '^Year:' | awk '{ print $2 }'`" install -D "$1" /music/mp3/"$ARTIST-$ALBUM-$YEAR"/"$TRACKNUM-$ARTIST-$TITLE".mp3 crshman@mcepc:/media/Data/mp3_fix$ clear crshman@mcepc:/media/Data/mp3_fix$ cat ./rename_mp3 rename_mp3 rename_mp3_loop rename_mp3_loop~ crshman@mcepc:/media/Data/mp3_fix$ cat ./rename_mp3_loop #!/bin/bash LIVE= # Set to some value for live operation # ex # $LIVE=a # the script will move files around # # $LIVE= # the script won't move anything around PRE_DEST='/media/Data/Share/Music/' # Local directory to move files to for file in *.mp3; do SP_TITLE="`id3tool "$file" | grep '^Song Title:' | awk '{ for (i=3;i<=NF;i++) { printf $i; printf " " } }'`" TITLE=${SP_TITLE:0:$((${#SP_TITLE}-1))} # Title of the track SP_ARTIST="`id3tool "$file" | grep '^Artist:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" ARTIST=${SP_ARTIST:0:$((${#SP_ARTIST}-1))} # Artist of the track FIRST_ARTIST=${ARTIST:0:1} # First Letter of the artist of the track SP_ALBUM="`id3tool "$file" | grep '^Album:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" ALBUM=${SP_ALBUM:0:$((${#SP_ALBUM}-1))} # Album name SP_YEAR="`id3tool "$file" | grep '^Year:' | awk '{ for (i=2;i<=NF;i++) { printf $i; printf " " } }'`" YEAR=${SP_YEAR:0:$((${#SP_YEAR}-1))} # Year of album TRACKNUM="`id3tool "$file" | grep '^Track:' | awk '{ print $2 }'`" # Track Title #Edit these to reflect your preferences FOLDER="$PRE_DEST$FIRST_ARTIST/$ARTIST/$ALBUM ($YEAR)" DEST="$FOLDER/$TRACKNUM - $TITLE.mp3" echo $file echo $DEST echo -e "\n" if [ $LIVE ]; then mkdir -p "$FOLDER" mv "$file" "$DEST" fi done